Apache Webserver, Tomcat, AJP, "All employees are in an error state for the route"

To preface this, I kept trying to find a solution. Below are just the latest links that provided some information, but none of them seem to work.

https://serverfault.com/questions/19947/apachetomcat-having-problems-communicating-unclear-error-messages-bringing-do

Tomcat stops responding to Apache

Despite the many configuration changes that I outline below, I could not prevent errors that appear in the log:

[Tue Jan 07 14:56:12.158345 2014] [proxy_ajp:error] [pid 12094:tid 140002805655296] (70007)The timeout specified has expired: AH01030: ajp_ilink_receive() can't receive header
[Tue Jan 07 14:56:12.158409 2014] [proxy_ajp:error] [pid 12094:tid 140002805655296] [client 10.4.65.146:58551] AH00992: ajp_read_header: ajp_ilink_receive failed, referer: http://xxxx/yyy/
[Tue Jan 07 14:56:12.158430 2014] [proxy_ajp:error] [pid 12094:tid 140002805655296] (70007)The timeout specified has expired: [client 10.4.65.146:58551] AH00878: read response failed from 10.4.3.33:8009 (tomcatworkerX), referer: http://xxxx/yyy/
[Tue Jan 07 14:56:12.229559 2014] [proxy_balancer:error] [pid 12094:tid 140002932012800] [client 10.4.230.138:57407] AH01167: balancer://lb: All workers are in error state for route (tomcatworkerX), referer: http://xxxx/yyy/zzz

Users who go down see the Server Unavailable screen, but the connection is restored after a few minutes. Sometimes, however, the same connection to the server increases up / down many times; this may be due to user behavior on the same (I use sticky sessions), but I could not confirm this.

My configuration is that I have one instance of the Apache web server running on Windows, with 4 Tomcat workers configured through AJP. All Tomcat employees are currently hosted under Windows on different hosts.

All the hosts in my scenario are virtual machines in a reliable production environment, each of which is dedicated to each of them.

Apache Version:

Server version: Apache/2.2.22 (Win32)

Tomcat - version 7.0.29

Each BalancerMember parameter has the following configuration parameters:

keepalive=On timeout=600 ttl=600

Tomcat (org.apache.coyote.ajp.AjpAprProtocol).

:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" maxThreads="450" connectionTimeout="600000" />

Oracle Oracle ojdbc15_g JDBC, v11.2.0.3.0.

, :

  • , Tomcat Apache. , Apache, jconsole. ( , - , ). , ~ 400 , ; .
  • , ... Tomcat jconsole, ajp-apr-8009-exec- #, , wait, .
  • - , - 600 , . , ; , , . , - , Oracle , . , /apr exec, 280 (4 40 ), , ; , , Tomcat .

, , , , ( googling , , ). : Apache Webserver Linux-, DNS- Linux, Windows. , , , Tomcat Windows.

Tomcat Linux, ( - , Windows , ) , , , .

, , - . .

+4
1

apache error_log ...

ELB 600 apache... tomcat - 600

- -

apache , 60

TimeOut 600 httpd.conf,

- - apache tomcat ... , api.

0

All Articles