In service environments, a key element to management of constrained resources is determination of what capacity is required to service the incoming demand.
Too much capacity and you're wasting the resource, and too little and you're restricting your ability to service the demand, potentially resulting in loss of market share.
In the hosting community, this translates to determination of how many threads/processes you need for any given data source (e.g. http, smtp, pop, imap, ftp, etc) to service your client base's demand. This count is especially important in sizing your server capability i.e. RAM, CPU, disk space, etc.
I'm looking for the community's help in collecting some "in service" data to try and characterize how many processes one would need for varying demands.
Take a look at your server logs over the recent past and see if you can try and identify how many concurrent connections you had to service for any given server. Then identify how many unique visitors per unit time you had to service and how many total requests per unit time you had to service (e.g. UV/month or hits/month)
See if you can respond to this thread with that kind of information, and any other type of information that you think might be pertinent, and I'll try and collate all the data into a human readable distribution plot. This data will show, statistically, how many processes one should have open to service a known volume of requests per unit time.
Feel free to discuss what other information is useful, or whether this whole thread is useless and should be deleted
Here's an example. Spamassassin takes ~25MB per process. If I have only 1 process open at a time, I can only service 1 incoming connection per unit time and the others will either be rejected or queued. If I have many incoming requests at the same time, do I want my users being turned away? On the flip side, if I start with too many child processes that don't get used, I'm wasting RAM allocations. If I could reduce my RAM allocation and move down to a smaller VPS, I could save myself some $ or deallocate it for Spamassassin and allocate it to other services like http, imap, ftp, etc.
Last edited by portalgod; 04-06-2011 at 08:08 PM.
Reason: Added example.