we're trying to move from apache 2.0.52 with mod_jk 1.2.19 to apache 2.2.3 with mod_proxy_ajp in front of tomcat 5.5.28

and we've run into a troubling bug/configuration/networking problem

with apache 2.0 and mod_proxy, things are very well behaved. apache has a connection pool of tomcat threads, and when apache kills a child process the corresponding tomcat thread is closed.

with apache 2.2 and mod_proxy_ajp, when apache kills a child process, the sometimes the tomcat thread is left hanging in the keep alive state. tomcat waits 120 seconds before terminating the hanging thread.

this seems to happen more often under higher traffic, and more often when tomcat is not running on the same server as apache.

under traffic, this results in a large number of tomcat threads that have lost their connection to apache and are waiting to timeout, eventually leaving no free threads for legitimate requests.

can anyone suggest what could be causing this, or how to troubleshoot? i've tried using the keepalive=on parameter to ProxyPass with no luck.

here are some relevant configuration details:

with both versions of apache we're using the worker MPM

tomcat server.xml:
        <Connector port="8009"
        enableLookups="false" redirectPort="8443" protocol="AJP/1.3"
        minSpareThreads="5" maxThreads="300"
        connectionTimeout="120000" URIEncoding="UTF-8" />

apache 2.0.52/mod_jk 1.2.19

apache 2.2.3/mod_proxy_ajp
        ProxyPass / ajp:// timeout=1800 keepalive=on

thanks in advance for any help, and if there's another mailing list for mod_proxy_ajp questions that would be a better recipient please let me know!

russell  uman

To unsubscribe, e-mail:
For additional commands, e-mail:

Reply via email to