In my specific case, I am working with websites, however the question is more general than that. What I’m looking for (I think) is something like a formula.
The situation is that I’ve already done load testing to determine the breaking point of the server. I know that any more than, say, 100 hits/second causes the server to overload and perform unacceptably. It is trivial to extrapolate this number to 360,000 hits/hour (100×60×60).
The problem arises when I get questions from marketing like, “for our next advertising campaign, how many visitors can we handle?” They work with numbers like, “2 million people will see our ad. Based on past experience we know about 10% of those people will click through, so 200,000 visitors will hit the website. Can we handle that?” If those 200,000 visitors were evenly distributed across an entire hour, the numbers above tell us that the server could handle the load fine. But what if the visitors were still spread across an hour, except the majority of visitors hit the site in the first 15 minutes? The site would be overloaded (100×60×15 < 200,000∕2).
The answer clearly depends on the distribution of hits. Unfortunately I don’t have that past data. So what are typical distributions for websites at both ends of the spectrum (sites with even distributions and sites with highly concentrated distributions)? If you don’t know, that’s fine as I can re-ask this part specifically in a separate question. More importantly:
Assuming I know what the distribution is, how do I apply that knowledge to determine the max # of visitors in a given interval based on max hits/second?
Until now I’ve assumed that one visitor means one hit. In reality each visitor will make one or more hits on the site. To take this into account, can I simply take the mean average of hits/visitor, then divide accordingly? Or do I have to take into account the distribution of page views per visitor (e.g. 90% of the visitors hit one page, 5% hit two pages, and 5% hit more than two pages)?
As a final consideration, this all involves a great deal of guesswork. This modelling will (in theory) give us a max number, but how much do you back off that number before passing it along? What are your thoughts on expressing the uncertainty of the result?