On Fri, Oct 11, 2013 at 10:52:13AM -0500, Jonathan Dart wrote: > If I request "http://localhost/server-status" every 1 second for 5 > seconds, on the last request apache reports that it has 5 active requests > all with a "Request" of /server-status and a "Mode of Operation" of > "Waiting for Connection". They are not active requests. They are previous requests which you can tell because the status of the child is "Waiting for Connection". > If right away I again request " > http://localhost/server-status" every 1 second for 5 seconds, the output of > server-status basically stays the same showing 5 active requests. > > This makes me think that for the first 5 requests apache started up a new > worker to handle each one, and the worker waited for further requests, but > for the next 5 requests apache decided that client had enough workers > dedicated to it and recycled the existing waiting workers. Almost right. There are already 5 child proceses there waiting for connections right at the start - they just have no previous request to report at that stage. Apache does not create any further child processes during the duration of your test. The apache children are not dedicated to your client during this test - they will serve any inbound request from any client so long as they are in the "Waiting for Connection" state. > Is what I described above expected? Yes. > Is the output of /server-status accurately reporting he status of the > server? Yes. > What configuration does the number of 5 come from? StartServers (in this particular case). Do have a read of the prefork MPM documentation to learn the meaning of each of the directives and how they govern the behaviour of the server over the long term. http://httpd.apache.org/docs/2.2/mod/prefork.html Good luck, Pete -- Openstrike - improving business through open source http://www.openstrike.co.uk/ or call 01722 770036 / 07092 020107
Attachment:
pgpYuENJtIEHB.pgp
Description: PGP signature