解决TIME_WAIT连接太多

转载 2007年09月27日 01:18:00
原贴:http://blog.chinaunix.net/u/26011/showart_332604.html

解决TIME_WAIT连接太多
 
 
   前言:经常检查Apache的连接数,同样会发现很多无用的Time_Wait连接。有人说这是正常的,是因为一个请求中途中断造成的;还有人说微软的 IE连接时产生的Time_wait会比用Firefox连接时多。个人认为有一定的Time_wait是正常的,如果超过了连接数的比例就不是很正常, 所以还是找来方法解决一下。
  
   检查net.ipv4.tcp_tw当前值,将当前的值更改为1分钟:
[root@aaa1 ~]# sysctl -a|grep net.ipv4.tcp_tw
net.ipv4.tcp_tw_reuse = 0
net.ipv4.tcp_tw_recycle = 0
[root@aaa1 ~]#

vi /etc/sysctl
增加或修改net.ipv4.tcp_tw值:
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1

使内核参数生效:
[root@aaa1 ~]# sysctl -p

[root@aaa1 ~]# sysctl -a|grep net.ipv4.tcp_tw
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1

设置这两个参数: reuse是表示是否允许重新应用处于TIME-WAIT状态的socket用于新的TCP连接; recyse是加速TIME-WAIT sockets回收

用netstat再观察正常
这里解决问题的关键是如何能够重复利用time_wait的值,我们可以设置时检查一下time和wait的值
#sysctl -a | grep time | grep wait
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120

 

这样的现象实际是正常的,有时和访问量大有关,设置这两个参数: reuse是表示是否允许重新应用处于TIME-WAIT状态的socket用于新的TCP连接; recyse是加速TIME-WAIT sockets回收

TCP连接状态详解及TIME_WAIT过多的解决方法

上图对排除和定位网络或系统故障时大有帮助,但是怎样牢牢地将这张图刻在脑中呢?那么你就一定要对这张图的每一个状态,及转换的过程有深刻地认识,不能只停留在一知半解之中。下面对这张图的11种状态详细解释一下...
  • liangzhao_jay
  • liangzhao_jay
  • 2016年01月20日 10:38
  • 3934

nginx:TIME_WAIT过多或者CLOSE_WAIT过多的状态

1 起因线上服务器nginx日志运行一段时间后,会报如下错误: 1024 worker_connections are not enough 一般做法是修改worker_connections。 ...
  • google0802
  • google0802
  • 2017年06月21日 11:59
  • 2035

TCP/IP详解--TCP连接中TIME_WAIT状态过多

TIMEWAIT状态本身和应用层的客户端或者服务器是没有关系的。仅仅是主动关闭的一方,在使用FIN|ACK|FIN|ACK四分组正常关闭TCP连接的时候会出现这个TIMEWAIT。服务器在处理客户端请...
  • yusiguyuan
  • yusiguyuan
  • 2014年03月18日 10:30
  • 49001

谈谈TCP中的TIME_WAIT

在服务端可能会经常遇到有很多处于TIMEWAIT状态的TCP连接。如果上网一搜索,可以找到有很多关于处理TIMEWAIT不正确的博文(包括本文),很多文章就放了几个调整参数。至于这些参数有什么用,为什...
  • jewes
  • jewes
  • 2016年09月24日 23:48
  • 1629

服务器TIME_WAIT和CLOSE_WAIT详解和解决办法

转自http://blog.csdn.net/shootyou/article/details/6622226,展开了链接
  • Kiritow
  • Kiritow
  • 2016年03月14日 22:59
  • 1418

在 Windows 上遇到非常多 TIME_WAIT 連線時應如何處理

我們公司所代管的網站裡,有幾個流量是非常大的,在尖峰的時刻同時上線人數可能高達數千到數萬人,而在這個時候如果使用 netstat 或 TCPView 查看所有 TCP 連線時就會看到非常多處於...
  • mhfh611
  • mhfh611
  • 2013年04月07日 21:06
  • 5377

linux 下解决timewait 过多的问题

TCP之再谈解决服务器TIMEWAIT过多的问题 2013-12-23 14:05:30 分类: LINUX 原文地址:TCP之再谈解决服务器TIMEWAIT过多的问题 作者:...
  • u011244446
  • u011244446
  • 2015年08月05日 17:55
  • 1775

一个解除TCP连接的TIME_WAIT状态限制的简便方法

/************************************ *              版权声明 *   本文为本人原创,本人拥有此文的版权。鉴于本人持续受益于开源软件社区, ...
  • wyhang0
  • wyhang0
  • 2014年10月26日 22:36
  • 1639

netstat监控大量ESTABLISHED连接与Time_Wait连接问题

问题描述: 在不考虑系统负载、CPU、内存等情况下,netstat监控大量ESTABLISHED连接与Time_Wait连接。 # netstat -n | awk '/^tcp/ {++...
  • liuzhenwen
  • liuzhenwen
  • 2015年12月10日 09:33
  • 4817

linux 大量的TIME_WAIT解决办法

发现存在大量TIME_WAIT状态的连接 tcp        0      0 127.0.0.1:3306              127.0.0.1:41378             TI...
  • gzh0222
  • gzh0222
  • 2013年01月10日 19:18
  • 26441
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:解决TIME_WAIT连接太多
举报原因:
原因补充:

(最多只允许输入30个字)