`
chembo
  • 浏览: 940770 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

netstat大量time_wait连接

阅读更多
netstat下time_wait状态的tcp连接:
1.这是一种处于连接完全关闭状态前的状态;
2.通常要等上4分钟(windows server)的时间才能完全关闭;
3.这种状态下的tcp连接占用句柄与端口等资源,服务器也要为维护这些连接状态消耗资源;
4.解决这种time_wait的tcp连接只有让服务器能够快速回收和重用那些TIME_WAIT的资源:修改注册表[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters]添加dword值TcpTimedWaitDelay=30(30也为微软建议值;默认为2分钟)和MaxUserPort:65534(可选值5000 - 65534);
5.具体tcpip连接参数配置还可参照这里:http://technet.microsoft.com/zh-tw/library/cc776295%28v=ws.10%29.aspx
6.linux下:
vi /etc/sysctl.conf
新增如下内容:
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syncookies=1
使内核参数生效:
[root@web02 ~]# sysctl -p
readme:
net.ipv4.tcp_syncookies=1 打开TIME-WAIT套接字重用功能,对于存在大量连接的Web服务器非常有效。
net.ipv4.tcp_tw_recyle=1
net.ipv4.tcp_tw_reuse=1 减少处于FIN-WAIT-2连接状态的时间,使系统可以处理更多的连接。
net.ipv4.tcp_fin_timeout=30 减少TCP KeepAlive连接侦测的时间,使系统可以处理更多的连接。
net.ipv4.tcp_keepalive_time=1800 增加TCP SYN队列长度,使系统可以处理更多的并发连接。
net.ipv4.tcp_max_syn_backlog=8192
分享到:
评论

相关推荐

    CentOS解决服务器存在大量time_wait的问题

    本文主要探讨了如何解决CentOS服务器上存在的大量TIME_WAIT TCP连接问题,这可能导致服务器连接数过多,进而引起服务假死。当服务器之间的通信过于频繁,如通过REST请求互相调用时,Java服务器可能无法及时回收TCP...

    服务器大量TIME_WAIT解决方法

    "服务器大量TIME_WAIT解决方法" 在 Linux 服务器中,TIME_WAIT 状态是一种常见的网络连接状态。然而,出现大量的 TIME_WAIT 状态可能会对服务器的性能产生影响。本文将详细介绍大量 TIME_WAIT 状态的成因、影响和...

    netstat显示 TIME-WAIT 的原因及解决办法

    3. **使用代理或负载均衡器**:在服务器前添加代理或负载均衡器,它们可以管理连接状态,减少服务器直接处理TIME_WAIT连接的压力。 4. **使用更快的协议**:如HTTP/2或QUIC等协议,它们支持多路复用,能在单个连接...

    CLOSE_WAIT网络连接无法释放问题解决

    使用netstat -na命令可以查看当前的TCP连接状态,包括LISTEN、ESTABLISHED、TIME_WAIT等状态。在这个例子中,使用netstat -na命令可以发现服务器端的连接状态为CLOSE_WAIT,这就表明服务器端的连接尚未释放。 通过...

    apache time_wait连接数太多问题解决方法

    2. **监控变化**:通过网络监控工具(如`netstat -nat | grep TIME_WAIT`)观察`TIME_WAIT`连接的数量变化。 3. **性能测试**:对服务器进行压力测试,评估调优后的性能提升情况。 #### 七、总结 通过对Apache...

    mysql占用率达到99%

    2. **进一步确认MySQL相关的TIME_WAIT连接**:通过命令`netstat -ae | grep mysql`,我们可以看到更多的TIME_WAIT状态的连接,这表明确实有大量与MySQL相关的连接处于这种状态。这些连接的源端口各不相同,但目标都...

    优化Linux的内核参数来提高服务器并发处理能力

    - 含义: 限制TIME-WAIT状态下的buckets数量,防止大量TIME_WAIT连接占用过多资源。 #### 应用步骤 1. 使用文本编辑器打开`/etc/sysctl.conf`文件。 2. 将上述参数添加到该文件中。 3. 保存并关闭文件。 4. 使更改...

    [Socket]CLOSEWAIT.rar_Help!

    4. **资源管理**:使用连接池可以有效管理Socket连接,避免大量并发连接导致的CLOSE_WAIT状态积累。 5. **监控与调试**:利用网络工具(如netstat命令)监控TCP连接状态,定位问题所在。 总的来说,Socket编程中的...

    TCP_Connection_Status.zip

    在实际应用中,结合这两个文件,IT管理员可以定期检查服务器的TCP连接情况,例如检测是否有大量半开连接(SYN_SENT或SYN_RECV)、是否存在长时间未关闭的连接(FIN_WAIT或CLOSE_WAIT),或者是否因为连接资源耗尽而...

    Linux查看某个端口的连接数的方法

    在某些情况下,可能会发现大量的`TIME_WAIT`状态连接,这可能导致端口资源耗尽。`TIME_WAIT`状态表示连接已关闭,但正在等待足够时间以确保远端收到终止连接的确认。为了缓解这个问题,可以通过修改内核参数来重用...

    apache并发连接查看

    例如,大量的**TIME_WAIT**状态可能表明服务器面临资源回收的压力;而高比例的**ESTABLISHED**状态则表明服务器当前正承受着较大的访问量。 #### 四、并发连接数的优化策略 1. **调整Apache配置**:合理设置Apache...

    互联网各厂运维方向面试题汇总(附答案)

    TCP大量TIME_WAIT状态的原因及解决方法** - **原因分析**:当客户端和服务端之间的TCP连接正常关闭时,服务端会在最后一个ACK包发送后进入TIME_WAIT状态。这个状态是为了确保最后一个ACK能够正确送达客户端。如果...

    查看Apache并发请求数及其TCP连接状态.pdf

    - **TIME_WAIT**:连接已经关闭,但等待一段时间以确保所有数据已传输且可以重用套接字。 5. **Apache的prefork和worker模式**: - prefork模式下,每个请求对应一个进程,而worker模式则使用多线程处理请求,...

    判断CC攻击 netstat命令详解

    #### 查找较多time_wait连接 ``` netstat -n | grep TIME_WAIT | awk '{print $5}' | sort | uniq -c | sort -rn | head -n 20 ``` 这条命令用于找出当前系统中处于`TIME_WAIT`状态连接最多的前20个IP地址。`TIME_...

    高并发场景下的Linux系统调优

    可以使用`netstat`命令来监控TIME_WAIT状态的连接数量,并根据实际情况调整内核参数。 此外,I/O事件分配机制的优化也非常重要。Linux系统中,通常使用Epoll作为高效的I/O多路复用技术。通过优化Epoll的配置,可以...

    系统运维工程师以及各厂面经及答案.docx

    TCP大量TIME_WAIT状态解析 **现象与原因:** 在高并发的短连接TCP服务器环境中,当服务器完成请求处理并立即按照正常流程关闭连接时,会使得大量套接字(sockets)处于`TIME_WAIT`状态。这是因为TCP协议为了确保...

    信息安全技术基础:Windows下netstat命令的使用.doc

    在日常的网络管理和安全维护中,netstat命令常用于排查网络问题,如检查是否有恶意程序占用大量连接,或找出导致网络延迟的原因。通过结合其他网络工具,如ping、traceroute等,可以更全面地诊断和解决网络问题。...

    各大互联网巨头运维开发面试题-附答案.docx

    - **TCP TIME_WAIT状态**:在高并发短连接场景中,服务器处理完请求后主动关闭连接,可能导致大量socket处于TIME_WAIT状态。这是因为TCP为了保证数据可靠性,会在连接关闭后等待一段时间确保所有数据已送达,这可能...

Global site tag (gtag.js) - Google Analytics