A simple guide for scaling web apps
I worked on a system that had more than a million users.
This is how we scaled the system to handle that amount of traffic.
1) Start simple
The application started as a monolith: one application server and one database server. This worked well for a couple of years, but as the number of users grew, the system became slower. Something needed to be done.
2) Scaling out the API
The next evolution was to scale the Web API horizontally to handle more requests. The API usually isn't the bottleneck, but in this system we were doing lots of processing in the app. We scaled the database instance vertically (scale up). However, we soon started running into problems with the database.
3) Caching (much later)
We already used caching to some extent, but this was simple in-memory caching on the application servers. So, we decided to introduce distributed caching with Redis. After introducing Redis, the load on the database dropped drastically, as most requests could be served from the cache. An added benefit was improved performance and responsiveness.
If you got this far, read this.
Solve the problem you have right now.
Developers love overengineering before they reach any significant scale.
Resist this temptation at all costs.
Want to learn more about scaling applications?
Go here: https://t.co/5ku66zXJnd
---
P.S. Get my free AI programming pack for Clean Architecture here: https://t.co/34o1NguaZ6
The moment history was made! 🇹🇭🥹❤️
Thailand’s women’s volleyball team are Olympic-bound for the first time after winning the 2026 AVC Championship yesterday.
See you at #LA2028!
https://t.co/HMEQ8FTTVj