System Design, Infrastructure

Millions of Users and Above

A corgi smiling happily

Scaling a system is an iterative process. Iterating on what we have learned in this chapter could get us far. More fine-tuning and new strategies are needed to scale beyond millions of users.

E.g., You might need to optimize your system and decouple the system to even smaller services. All the techniques learned in this chapter should provide a good foundation to take on new challenges.

How we can scale to support millions of users:

  1. Keep our web tier stateless
  2. Build redundancy at every tier
  3. Cache data as much as you can
  4. Support multiple data centers
  5. Host static assets at CDN
  6. Scale your data tier by sharding
  7. Split tier into individual services
  8. Monitor your system and use automation tools


Do you have any questions, or simply wish to contact me privately? Don't hesitate to shoot me a DM on Twitter.

Have a wonderful day.
Abhishek 🙏

Subscribe to my newsletter

Get email from me about my ideas, full-stack development resources, tricks and tips as well as exclusive previews of upcoming articles.

No spam. Just the highest quality ideas you’ll find on the web.