CLOSE_WAITNON_ESTABLISHED 连接数过高,导致tomcat服务直接宕机

Posted hz0356

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CLOSE_WAITNON_ESTABLISHED 连接数过高,导致tomcat服务直接宕机相关的知识,希望对你有一定的参考价值。

技术分享图片

 

TCP常见配置参考地址:

http://shift-alt-ctrl.iteye.com/blog/1966744;
https://www.cnblogs.com/fczjuever/archive/2013/04/05/3000697.html

以上图最大连接数接近了2000,这个对于单机环境来说基本已经到达了最大的负载,导致服务器的tomcat应用服务器直接宕机,
其中最多的连接是CLOSE_WAIT达到了1029个,NON_ESTABLISHED达到了500个,这都是由于后台服务没及时响应而app端主动断开连接,导致后台的连接没有全部释放,直接成几数增长,服务器直接宕机
关于为什么会出现这种不正常的连接,可以参考:https://blog.csdn.net/kkgbn/article/details/77859881这篇文档
以下修改策略有两个地方:

1、修改windows服务TCP配置keepAliveTime参数为1800000,即30分钟,默认为2个小时,这个地方的单位为毫秒
windows:
开始->运行->输入regedit
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters

技术分享图片

 



2、修改tomcat的connect配置信息:keepAliveTimeout 更改为60s

 技术分享图片

总结:经过几天的测试完美解决问题,服务器再没有宕机过,当然在产品上线之前也做过tomcat和数据库sql优化,不是全靠这一个配置就能解决所有问题的

 











以上是关于CLOSE_WAITNON_ESTABLISHED 连接数过高,导致tomcat服务直接宕机的主要内容,如果未能解决你的问题,请参考以下文章