Start with something like this: MaxClients 150 ... MaxSpareThreads 75
in the default conf file, which is a very reasonable way to run. Then realize you need to support boatloads more clients, so you bump up MaxClients to 5000. Now when load changes very slightly (as a percentage of MaxClients), which happens continuously, the web server will create or destroy a child process. Okay, it works, but you can remain stuck in the confusing state where there are multiple child processes using the same process_score, and you can see lots more httpd processes than you expect, and you can start worrying if you're going to run out of paging/swap space since there are so many darn httpd processes. (A lot of these are terminating.) Any comments on these two separate proposals? a) "MaxSpareThreads auto" the "auto" keyword means automatically set this to 50% of MaxClients; stick this in Apache default conf file b) tweak worker MPM to automatically bump the value of MaxSpareThreads to at least 15% of MaxClients, with a warning written to the error log