Linux中出现大量TIME_WAIT的解决办法
实际工作中,最好让运维去调整。
查看命令:netstat -ae | grep “TIME_WAIT” | wc -l
通过调整内核参数解决:vi /etc/sysctl.conf ,加入以下内容
-
net.ipv4.tcp_tw_reuse = 1
开启重用,允许将TIME-WAIT sockets重新用于新的TCP连接
-
net.ipv4.tcp_tw_recycle = 1
开启TCP连接中TIME-WAIT sockets的快速回收
-
net.ipv4.tcp_fin_timeout = 30
修改系统默认的TIMEOUT时间
-
net.ipv4.tcp_keepalive_probes = 5
减少超时前的探测次数
-
net.ipv4.tcp_keepalive_intvl = 20
探测消息发送的频率
-
net.ipv4.ip_local_port_range = 1024 65000
表示用于向外连接的端口范围
-
net.ipv4.tcp_max_syn_backlog = 8192
表示SYN队列的长度,默认为1024,加大之后,可以容纳更多等待连接的网络连接数
-
net.ipv4.tcp_syncookies = 1
开启SYN Cookies,当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN***
然后执行/sbin/sysctl -p 让参数生效
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/194774.html