Scaled from 0 to 1m in revenue with this stack
Cloudflare -> Load balancer -> VM -> RDS
No breakage so far
Scaled from 1,000 to 100,000 users. Here's what broke.
At 5,000 users:
- Single database became the bottleneck
- Added read replicas
At 20,000 users:
- Session storage overwhelmed Redis
- Switched to JWT tokens
At 50,000 users:
- File uploads killed our servers
- Moved to S3 with presigned URLs
At 75,000 users:
- Search became unusable
- Implemented Elasticsearch
At 100,000 users:
- DNS became single point of failure
- Multi-region with Route53 failover
Every stage felt like the final architecture.
None of them were.
Scaling isn't a destination. It's a continuous series of bottleneck discoveries.