@Aditya_Verma the calculations performed above (to obtain ~10 servers) are actually logical and good enough to be presented in an interview, and it seems to work best if we have a uniform distribution of requests during the day.
However, the formula we presented assumes that all daily active users are concurrently requesting and that each user generates one request per second. It covers the request load during peak hours. But of course, besides peak hours, our servers will mostly be idle. And for this, we can use the elasticity concept for resources, as we acquire resources when needed and give back resources to the provider when there is no need.
Kindly revisit the second lesson of the
Back of the envelope calculation that details why performing the calculation
number of RPS/number of RPS a system can handle is not optimal even if it seems logical and mathematically correct. Please read starting from:
Indeed, the number above doesn’t seem right. If we only need 15 commodity servers to serve 500M daily users, then why do big services use millions of servers in a data center?
Before this discussion, we calculate the number of servers exactly the way you are suggesting. However, this is the best-case scenario when systems should ideally be prepared for the worst-case scenarios as well.
Hope this was helpful.