有3个Tomcat 7实例。Load Balancer
将请求重定向到此3服务器。当给出每秒500个请求的负载时,3个tomcat中的一个挂起,没有在tomcat上收到请求。有时甚至所有3个都会挂起。
Netstat output
显示以下
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN
tcp 8080 0 10.10.1.97:60358 10.10.1.86:1521 ESTABLISHED
tcp 8080 0 10.10.1.97:60429 10.10.1.86:1521 ESTABLISHED
tcp 8080 0 10.10.1.97:60165 10.10.1.86:1521 ESTABLISHED
tcp 8080 0 10.10.1.97:60408 10.10.1.86:1521 ESTABLISHED
tcp 8080 0 10.10.1.97:60352 10.10.1.86:1521 ESTABLISHED
tcp 8080 0 10.10.1.97:60518 10.10.1.86:1521 ESTABLISHED
当我杀死tomcat进程时,以下是netstat输出:
tcp 0 0 10.10.1.97:8080 10.10.1.212:59990 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:56286 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:56753 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:57180 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:57609 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:62490 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:62274 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:62663 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:62084 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:55357 TIME_WAIT
tcp 0 0 10.10.1.97:8080 10.10.1.212:61369 TIME_WAIT
Tomcat版本
Server version: Apache Tomcat/7.0.47
Server built: Oct 18 2013 01:07:38
Server number: 7.0.47.0
Tomcat端口8080连接器配置为:
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
maxThreads="500"
minSpareThreads="75"
redirectPort="8443" />
我的问题是为什么tomcat挂起并且netstat结果显示ESTABLISHED
中的tcp连接,并且在发生这种情况时没有收到单个请求?哪些配置更改可以解决此问题?