I'm using tomcat server 7 with apache mode_proxy_ajp module to serve a website. Here is my ajp connector config:
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" connectionTimeout="20000"
minSpareThreads="10" maxThreads="512" executor="tomcatThreadPool_1" acceptCount="128"
acceptorThreadCount="2" maxKeepAliveRequests="50" keepAliveTimeout="10000" URIEncoding="UTF-8"/>
& here is executer config:
<Executor name="tomcatThreadPool_1" namePrefix="catalina-exec-" connectionTimeout="20000"
minSpareThreads="10" maxSpareThreads="50" maxThreads="512" acceptCount="128"/>
now the problem is that many times I see many connections with S (service) status in tomcat manager (server status), something like this:
these connections seems to open for a long time, but they have not any send or receive & even background code execution & cpu consumption (so I assume that my servlet code is OK), they look like just some zombie connections & they won't destroy till restarting tomcat server (restarting apache server & even tomcat virtual hosts via host manager has no effect on them)!
I checked all possible related parameters, but I could not find source of this problem.