httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Lars Eilebrecht <>
Subject strange usage pattern for child processes
Date Wed, 15 Oct 2008 11:55:48 GMT

I'm trying to debug a performance issue on an Apache infrastructure
using 2.2.9 as reverse proxies. The Apache servers don't do much
except for ProxyPass'ing data from others backend servers, and
caching the content using mod_mem_cache.
This is Apache with the worker mpm on Solaris. Currently each
box is configured with a ServerLimit of 3. The attached screenshot
of the server-status page shows that almost all threads of one
child process (at the bottom) are in "W" state. The thread status
of the process shown at the top look OK, but the second child
process doesn't seem to be used at all. 
The first odd thing is that I would have expected that Apache
uses all child processes about equally. Especially I would
have expected that there are at least 25 threads for the second
process in state "_" (waiting for connection), because the
MinSpareThread directive is set to 25. 
The second odd thing is that the connections/threads in W state
seem to be hanging, i.e., no data is being transferred over the
connection and these threads/connection time out after about 256
seconds. However, the general Timeout setting is 30s so why
isn't the connection killed after 30s?

What happens during peek times is that all threads of one
child process end up in state W, then Apache starts using
another child process, etc. and at some point basically
all threads are in state W and we are hitting the MaxClients
limit which makes the server unusable. 

Anyone any ideas about this? :)

Lars Eilebrecht

View raw message