Tomcat 7去了<defunct>,不能杀死进程。 可能是什么原因?

我正在运行tomcat7生产服务器好几天,然后突然被http端口无法访问 。 奇怪的是,后台进程仍在运行 ,可以看到日志。

所以我试图阻止tomcat7使用invoke-rc.d tomcat7 stop从我的debian wheezy框。 但是,这个过程仍然在那里,与国旗。 我试过kill -9 <pid>killall -9 java ,但仍然存在进程 – 仍然占用端口,导致我无法启动新的tomcat,并且端口已经被使用错误。

我不得不重新启动。 从那里一切正常。

但是我很好奇什么可能会导致这种情况? 没有什么大的负荷。 只有一些后台进程运行,刮。 我从日志中看不到任何可疑的东西。

如果再次发生这样的事情来解决真正的问题,我该怎么办?

这是我的连接器设置:

 <Connector port="8080" address="127.0.0.1" maxParameterCount="500" maxPostSize="250000" scheme="http" secure="false" protocol="org.apache.coyote.http11.Http11AprProtocol" connectionTimeout="20000" disableUploadTimeout="false" connectionUploadTimeout="300000" maxThreads="500" processorCache="500" URIEncoding="UTF-8" /> 

我的tomcat版本: 7.0.28-4 + deb7u1

我的虚拟机参数:

JAVA_OPTS =“ – Djava.awt.headless = true -Dspring.profiles.active =”background,production“-XX:-UseSplitVerifier -javaagent:/var/lib/tomcat7/spring-instrument-3.2.3.RELEASE.jar – server -Xms4G -Xmx4G -XX:MaxPermSize = 128m -XX:+ DisableExplicitGC -XX:-HeapDumpOnOutOfMemoryError -XX:HeapDumpPath = / var / log / tomcat7 / dump -XX:+ UseParNewGC -XX:+ UseConcMarkSweepGC -XX:+ UseTLAB- XX:+ CMSIncrementalMode -XX:+ CMSIncrementalPacing -XX:CMSIncreatingDutyCycleMin = 0 -XX:CMSIncrementalDutyCycle = 10 -XX:MaxTenuringThreshold = 0 -XX:SurvivorRatio = 256 -XX:CMSInitiatingOccupancyFraction = 60 -Djava.net.preferIPv4Stack = true“

jdk版本: 7u60