Performance problem in using JBoss EAP 6 with AJP
edmondcmho Sep 16, 2013 8:30 AMHi,
We are performing load test with an application deployed in JBoss EAP 6. We access the application via Apache Web Servers which connect to the JBoss EAP6 using mod-jk.
No problem was found until we have increased the number of virtual user to ~100, the mod-jk shows the following error and failover to the second node,
[Mon Sep 16 19:29:12 2013][26516:209663744] [error] ajp_send_request::jk_ajp_common.c (1507): (node1) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=110)
[Mon Sep 16 19:29:12 2013][26516:283092736] [error] ajp_connect_to_endpoint::jk_ajp_common.c (957): (node1) cping/cpong after connecting to the backend server failed (errno=110)
According to the access log in the Jboss EAP6, no HTTP request is processed longer than 1 seconds but the access log in the Web Server showed some HTTP request took more than 10 seconds.
The problem couldn't be solved even we have increased the max-threads and max-connections.
<subsystem xmlns="urn:jboss:domain:threads:1.1"> | |
<bounded-queue-thread-pool name="http-executor"> | |
<core-threads count="200"/> | |
<queue-length count="50"/> | |
<max-threads count="1000"/> | |
<keepalive-time time="10" unit="seconds"/> | |
</bounded-queue-thread-pool> | |
</subsystem> ... | |
<subsystem xmlns="urn:jboss:domain:web:1.4" default-virtual-server="default-host" instance-id="${jboss.node.name}" native="false"> | |
<connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/> | |
<connector name="ajp" protocol="AJP/1.3" scheme="http" socket-binding="ajp" executor="http-executor" max-connections="1000"/> | |
<virtual-server name="default-host" enable-welcome-root="true"> | |
<alias name="localhost"/> | |
<alias name="example.com"/> | |
<access-log pattern="%a %t %H %m %p %U %s %S %T"/> | |
</virtual-server> | |
</subsystem> |
The related parameter in the worker file of mod-jk is as follows,
worker.template.host=localhost
worker.template.type=ajp13
worker.template.lbfactor=1
worker.template.connect_timeout=10000
worker.template.prepost_timeout=10000
worker.template.socket_timeout=10
worker.template.connection_pool_timeout=600
Does anyone have idea?
Thanks in advance.
E. Ho