On Sep 19, 2012, at 5:38 PM, Django Radonich-Camp wrote:

> hello.
> 
> we are running an application on tomcat and experiencing intermittent
> periods where the application is non-responsive and thus non-functional.
> the general set up is apache and tomcat, with mod_proxy_ajp as the
> connector (specific details and configs below).
> 
> during these events, the primary apache error log shows the following:
> 1. (104)Connection reset by peer: ajp_ilink_receive() can't receive header
> 2. (70007)The timeout specified has expired: ajp_ilink_receive() can't
> receive header
> 
> it looks like error #1 repeats for a while and then error #2 repeats for a
> while.
> 
> at the same time in the application specific apache error log (as specified
> in the vhost set up for app) we see the following errors repeated (though
> in mixed order from below):
> 3. [error] ajp_read_header: ajp_ilink_receive failed
> 4. [error] (120006)APR does not understand this error code: proxy: read
> response failed from (null) (localhost)
> 5. [error] (120006)APR does not understand this error code: proxy: read
> response failed from 127.0.0.1:8009 (localhost)
> 6. [error] [client X.X.X.X] proxy: error processing end
> 
> and occasionally:
> 7. [error] proxy: read zero bytes, expecting 464 bytes
> 
> the catalina.out log registers nothing during the time period the
> application is unresponsive.
> 
> a couple of other things to note:
> - these events are coming under light to no load as far as i can tell.
> - these events last from about 5 to 30 minutes and then everything works
> again as expected with no manual intervention.
> - the time of day of for the events is not consistent.
> - these events initially occured rarely, but over the last month have
> ramped up to daily.
> 
> any suggestions on how to fix or further troubleshoot this problem? and
> thanks in advance for the help.

Here are a couple additional troubleshooting steps you can take on your Tomcat 
instances...

1.) Enable garbage collection logging.  Look for any full GC's.
2.) Take some thread dumps during an incident.  Look for blocking.

Dan


> 
> below please find more information on versions and configs... let me know
> if more info is needed.
> 
> OS Name:        Linux (ubuntu 10.04.4)
> OS Version:     2.6.32-31-server
> Architecture:   amd64
> JVM Version:    1.6.0_32-b05
> JVM Vendor:     Sun Microsystems Inc.
> Server version: Apache Tomcat/6.0.24
> apache: Apache/2.2.14
> 
> MPM configs
> --------START--------------
> <IfModule mpm_prefork_module>
>   StartServers          5
>   MinSpareServers       5
>   MaxSpareServers      10
>   MaxClients           26
>   MaxRequestsPerChild  1000
> </IfModule>
> --------END----------------
> 
> balancer conf
> --------START--------------
> <Proxy balancer://mysite_balancer*>
>    Order deny,allow
>    Allow from all
> </Proxy>
> 
> ProxyPassMatch ^/(.+.cf[cm])(.*)?$ balancer://mysite_balancer/irised/client
> stickysession=JSESSIONID|jsessionid
> 
> ProxyPassReverseCookiePath /irised /
> 
> <Proxy balancer://mysite_balancer>
>    BalancerMember ajp://localhost:8009 route=www1 retry=5
> </Proxy>
> --------END----------------
> 
> connector xml
> --------START--------------
> <Connector URIEncoding="UTF-8"
>           port="8009"
>           protocol="AJP/1.3"
>           connectionTimeout="20000"
>           redirectPort="8443" />
> --------END----------------


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to