Capacity puzzle
Estimate the pressure
A feed service has 2 million daily active users. Each user opens the feed 20 times per day and writes 2 posts per day.
Puzzle target
Use rough math to decide whether read caching, fanout, and stateless app scaling matter.
Not selected yet
Not selected yet
Not selected yet
Complete each design choice to unlock the review. The feedback above will point out what your current tradeoff misses.
Flash cards
Review the key moves
What is the main idea behind System Design: Capacity Estimation?
Lesson checks
Practice each idea before moving on
Short Mimo-style checks built from this lesson's code, terms, and sequence.
Which statement best captures the main point of this lesson?
Put the learning moves in the order that makes the concept easiest to apply.
System design is a sequence of explicit tradeoffs. Start small: clarify the goal, estimate load, pick the simplest architecture, then name what breaks first.
| Design surface | What you decide |
|---|---|
| Requirements | Functional behavior, constraints, and non-goals |
| Scale | Reads, writes, storage, bandwidth, and latency target |
| Architecture | Clients, load balancer, services, cache, database, queue, and workers |
| Reliability | Failure mode, fallback, retry, and metric |
| Goal | Estimate reads, writes, storage, and bandwidth with simple round numbers. |
Practice Task
- Start from daily active users, requests per user, payload size, and retention before picking databases or caches.
- Use the design puzzle below to choose components and tradeoffs.
- Explain the bottleneck before adding more infrastructure.