Tools · Capacity & Architecture
System Design Generator
Describe your product and scale. Get back real back-of-the-envelope capacity numbers and a reference architecture — the way you'd sketch it in a system design interview.
Peak QPS
4.2K
1.4K avg
Read QPS
4.0K
Write QPS
208
Egress @ peak
88.7 Mbps
Storage / year
9.4 TB
7.6 GB/day
Cache (hot set)
127 GB
App servers
×6
at peak
DB shards
×1
RF3
Reference architecture
Rendering diagram…
Design rationale
- ▹Run 6 stateless app instances behind the balancer at peak (4.2K rps ÷ 800 rps/instance), autoscaling on CPU + request depth.
- ▹Authentication is delegated to a managed identity provider (Cognito · Auth0). Clients obtain an OAuth2/OIDC token; the app tier verifies the JWT signature against the provider's JWKS (cached), so no session state lives on the servers.
- ▹Persistent WebSocket/SSE tier handles live updates and presence, decoupled from the request/response app tier so long-lived connections don't tie up API workers.
- ▹Cache the hot read set (~127 GB) in Redis to absorb the 4.0K rps read load and keep tail latency low.
- ▹A single NoSQL cluster covers the ~208 wps write load with replication factor 3.
- ▹Stored data grows to ~9.4 TB after one year (7.6 GB/day ingest × 365 × RF3).
- ▹Fan reads out to 3 read replicas per shard so the 4.0K rps read traffic never touches the write primaries.
- ▹Large media lives in object storage (S3), served through the CDN via origin-pull — keep binaries out of the primary database.
- ▹Full-text search runs on an Elasticsearch/OpenSearch cluster, indexed asynchronously off the write path (via CDC or the queue).
- ▹A durable log (Kafka) decouples spiky writes from downstream work — indexing, notifications, media transcoding, and analytics all consume from it independently.
- ▹Events stream into a columnar warehouse (BigQuery/Snowflake) for reporting, so heavy analytical queries never hit the transactional database.
- ▹Target SLA 99.99% availability → budget of ~52m / year. Deploy across multiple availability zones with health-checked failover.
- ▹Multi-region: pin data to a primary region with async cross-region replicas for DR; route users to the nearest healthy region.
- ▹Resilience: one primary region across 3 availability zones, plus a warm DR region kept in sync by async replication for failover.