前端压力过大时,无结果现象

来源:互联网 发布:亚马逊云计算发展历史 编辑:程序博客网 时间:2024/05/02 13:52


今天在对前端进行压力测试的时候,发现很多query超时。


后来发现问题是TIME_WAIT造成的。


用netstat -an | wc -l 看连接数已经超过2w


一个机器作为client,能够发起的连接数是有限的。由于tcp的TIME_WAIT,造成了很多链接都在等待TIME_WAIT超时,不能相应服务。


解决方案:将TIME_WAIT超时改小,或禁止。


禁止方法:

修改/etc/sysctl.conf

添加

net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1


需要注意的是发送压力的机器也需要禁止TIME_WAIT


查看TIME_WAIT的方法:

netstat  -apn | grep TIME_WAIT


关于TIME_WAIT问题的详细解释:

http://wenku.baidu.com/view/5f58552c7375a417866f8f75.html