Good news: the app you built has a lot of users.
From 100 to 100,000.
The one server you built on is beginning to crack.
You have two options:
• Scale vertically by upgrading your server
• Scale horizontally by buying more of the same servers
Each has trade-offs.
Horizontal scaling means after you’ve added servers, solving the the distributed systems problems that comes with it (which serves take what % of the traffic, etc).
Vertical scaling buys you time, but it has a hard ceiling: eventually the biggest server available gaps out (assuming your app does really well). There are also risks with downtown when upgrades occur, where horizontal scaling can support that without the app being offline.
Trade offs, trade offs everywhere.