2. Back-of-Envelope Estimation
2.5 How do you turn daily users into requests per second?
From users to numbers
At the wedding: 500 guests × 3 plates each = 1,500 plates. That's for the whole day. The kitchen cares about how many plates per hour, so you divide by the hours of service.
In the system: Three moves: multiply, divide, multiply.
- Multiply daily users by actions per user to get actions per day.
- Divide by seconds in a day to get the average per second.
- Multiply by a peak factor to get the busiest second (2.7).
For PicShare (assumed): 10 million daily active users, each viewing 50 photos a day.
Figure: from 10 million users to about 17,400 reads a second at peak, in three moves.
- Views per day = 10 million × 50 = 500 million.
- Average = 500 million ÷ 86,400 ≈ 5,800 reads a second. (In your head: 500 million ÷ 100,000 = 5,000. Close enough to start with.)
- Peak at 3 times the average ≈ 17,400 reads a second.
DAU, exactly: the number of distinct users who use the product at least once in a day. Not page views, not sign-ups. A user who opens the app 10 times is still 1 daily active user, but makes 10 times the requests, which is why you multiply by actions per user.
Memory code: "Times, divide, times." Users × actions, ÷ seconds, × peak.