公司服务器又挂了,最近一段时间总出问题,每次重启后就能恢复,但一段时间又挂了,可是tomcat的进程并没有死掉,网页无法访问,catalina.2018-01-09.log日志中出现org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads异常,netstat -nao 查看发现大量的8080端口线程是close wait状态,有可能是访问量变多,开始以为是内存泄漏,但内存显示正常,后来猜测可能是大量的连接没有被释放,导致阻塞了,看了一下tomcat的server.xml文件,发现的确没有配置KeepAlive和keepalivetimeout ,tomcat默认为15秒,可能时间太长了,重新将keepalivetimeout=“5000”,5秒,KeepAlive=“off”
org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc解释
http://bbs.csdn.net/topics/392076474
KeepAlive和keepalivetimeout详解
http://langzhiwang888.iteye.com/blog/1615089