"Three servers or three thousand?"
Anjali's team is launching Snapgram, a photo-sharing app, in six weeks. At the planning meeting the CTO asks one question: "How many servers do we need on launch day? Three or three thousand?" Nobody knows. (Anjali, Snapgram and every number here are made up for teaching.)
That evening Anjali calls her uncle, a wedding caterer, and asks how he plans a feast for 800 guests. He never waits to see how hungry people are. He asks four things:
- How many guests?
- How much does each one eat?
- How much goes to waste?
- How many cooks and stoves does that need, plus a cushion for surprise guests?
His answer is rough, but it decides whether the feast works.
Capacity estimation is the caterer's habit applied to software. It isn't about being exact. It's about knowing the order of magnitude (3 servers or 3,000?) and spotting the bottleneck early. Anjali follows this order:
| Step |
Caterer |
Snapgram |
| 1 |
Know your kitchen's numbers |
Numbers worth memorising |
| 2 |
Guests × portions × waste |
The estimation method |
| 3 |
The menu plan |
Worked example: Snapgram's load |
| 4 |
Cooks and stoves |
How many servers? |
| 5 |
"What if the baraat arrives all at once?" |
Peaks, percentiles, headroom |
| 6 |
A trial cook the week before |
Load testing |
1. Know your kitchen: numbers worth memorising
A caterer knows that one stove makes about 200 rotis an hour without looking it up. Engineers need the same instincts.
Sizes and rates:
| Quantity |
Approximate |
| 1 KB, 1 MB, 1 GB, 1 TB |
10^3, 10^6, 10^9, 10^12 bytes (use 1,000 for estimates) |
| Seconds in a day |
86,400, round to about 100,000 (10^5) |
| Seconds in a month |
about 2.5 million |
| 1 million requests per day |
about 12 per second |
| 1 billion requests per day |
about 12,000 per second |
You've reached the free preview of this post.
Subscribe to the Blogs plan (₹99/mo) — or use any Algomi Suite, Career, Investor, or Trader plan — to keep reading.
See plans