Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm using prefork apache 2.2 and I can't seem to figure out why there is a MaxClients directive and a ServerLimit directive.

I understand that you need to increase both of these in step -- google has told me this over and over again. As far as I can tell they both control the maximum number of Apache process running at any time.

Why do they both exist? For prefork, they seem redundant. Is there a subtle difference I'm missing?

share|improve this question
Unless you have oodles of RAM you may want to decrease MaxClients, it depends on the average size of your httpd process. – HTTP500 Dec 6 '11 at 15:46
up vote 3 down vote accepted

Serverlimit = limit for processes in general (default: 256)

MaxClients = limit for child-processes

You don't have to set ServerLimit as long as Maxclients < 256 btw. (but you can save some memory if you do so)

share|improve this answer
Specifically from the docs: "With the prefork MPM, use this directive only if you need to set MaxClients higher than 256 (default). Do not set the value of this directive any higher than what you might want to set MaxClients to." – Andrew M. Dec 6 '11 at 16:40

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.