On Thu, May 31, 2012 at 3:08 PM, Roney Duilio Stein <roney.st...@sondait.com.br> wrote: > Hello. > > Please, I appreciate if someone could help me answering some questions: > > I'm working on an issue that I sent to the Tomcat users mailing list > (http://tomcat.markmail.org/search/?q=#query:%20list%3Aorg.apache.tomcat.users+page:5+mid:4w7j4oqnuxwkz67c+state:results). > > I have some questions: > 1. Are the error messages below caused by Apache waiting for a response from > Tomcat which never comes? There's no directly corresponding error message in > the Tomcat logs, some errors are past or before the dates on the Apache log; > 2. After the node enters the "error state" what happens to the existing > connections to this Tomcat instance? > > [Thu May 31 10:15:47 2012] [error] (OS 10060)A connection attempt failed > because the connected party did not properly respond after a period of time, > or established connection failed because connected host has failed to > respond. : ajp_ilink_receive() can't receive header > [Thu May 31 10:15:47 2012] [error] ajp_read_header: ajp_ilink_receive failed > [Thu May 31 10:15:47 2012] [error] (70007)The timeout specified has expired: > proxy: dialog to 127.0.0.1:9109 (127.0.0.1) failed > [Thu May 31 10:15:49 2012] [error] proxy: BALANCER: (balancer://wlb). All > workers are in error state for route (wt2) > [Thu May 31 10:15:50 2012] [error] proxy: BALANCER: (balancer://wlb). All > workers are in error state for route (wt2) > [Thu May 31 10:15:51 2012] [error] proxy: BALANCER: (balancer://wlb). All > workers are in error state for route (wt2) > > We were suspecting on a TCP/IP stack issue (or something related) but > everything works fine (no other connection problems), only this application > shows these errors. I'm suspecting this is caused by some misbehavior in the > application, which in turn, causes other problems due to the node entering > the "error state". > Apache is proxying to 2 Tomcat instances (this application) and to 1 third > application (which doesn't suffer any problem). > > Apache is version 2.2.22, Tomcat 6.0.29 (same thing with 6.0.20). > This single error puts the worker in "error state", which is bad, and the fix > from 2.2.22 to overcome this kind of situation doesn't cover this specific > case. > > The configuration used in Apache HTTP is: > ServerSignature Off > ServerTokens Prod > Timeout 600 > LimitRequestFieldSize 20480 > ProxyIOBufferSize 21504 > ProxyRequests Off > ProxyPreserveHost On > <Proxy *> > Order deny,allow > Allow from all > </Proxy> > <Proxy balancer://wlb> > BalancerMember ajp://10.11.102.224:9109 route=wt1 loadfactor=50 max=85 > ttl=120 retry=5 connectiontimeout=5000ms ping=5000ms > BalancerMember ajp://127.0.0.1:9109 route=wt2 loadfactor=50 max=85 ttl=120 > retry=5 connectiontimeout=5000ms ping=5000ms > </Proxy> > ProxyPass /app1 balancer://wlb/app1 stickysession=JSESSIONID nofailover=On > ProxyPass /app2 ajp://10.11.102.219:8009/app2 > > The AJP connector in Tomcat (app1): > <Connector port="9109" protocol="AJP/1.3" redirectPort="8443" > packetSize="22528" maxThreads="200" connectionTimeout="120000"/> >
You just might not be having enough threads in this connector to handle the workload. See how many of the 200 threads are busy when the problem occurs. netstat -s -t would also tell you about failed connection attempts. Sridhar > > Thanks a lot. > Roney > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@httpd.apache.org > For additional commands, e-mail: users-h...@httpd.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@httpd.apache.org For additional commands, e-mail: users-h...@httpd.apache.org