unix下解决服务器产生大量close_wait问题

来源:互联网 发布:我做淘宝客怎么找商家 编辑:程序博客网 时间:2024/06/16 16:33

下面方法本人未校验过


unix下解决服务器产生大量close_wait问题


要解决这个问题可以修改系统的参数(/etc/sysctl.conf文件),系统默认超时时间是7200秒,也就是2小时。
默认如下:
tcp_keepalive_time = 7200 seconds (2 hours)
tcp_keepalive_probes = 9
tcp_keepalive_intvl = 75 seconds

意思是:如果某个TCP连接在idle 2个小时后,内核才发起probe。如果probe 9次(每次75秒)不成功,内核才彻底放弃,认为该连接已失效

修改后

sysctl -w net.ipv4.tcp_keepalive_time=30
sysctl -w net.ipv4.tcp_keepalive_probes=2
sysctl -w net.ipv4.tcp_keepalive_intvl=2

经过这个修改后,服务器会在短时间里回收没有关闭的tcp连接。


文章出处:http://blog.sina.com.cn/s/blog_5ca9fdd80100pvz4.html


0 0
原创粉丝点击