Chapter 1 of 10All chapters
Chapter 1 of 10
Start with numbers
Estimates before diagrams.
Ask how much
Requests per second, data volume, growth rate and acceptable latency decide everything downstream. A design for a thousand users and one for ten million share almost no components.
- Separate functional requirements from the scale they must work at.
- Estimate roughly and out loud. Being within an order of magnitude is enough to choose.
Read and write shape
Most systems read far more than they write, which is why caching and replicas help so much. A write-heavy system needs a completely different plan.