zoukankan      html  css  js  c++  java
  • TIME_WAIT过多

    Linux系统下,TCP/IP连接断开后,会以TIME_WAIT状态保留一定的时间,然后才会释放端口。当并发请求过多的时候,就会产生大量的 TIME_WAIT状态的连接,无法及时断开的话,会占用大量的端口资源和服务器资源(因为关闭后进程才会退出)。这个时候我们可以考虑优化TCP/IP 的内核参数,来及时将TIME_WAIT状态的端口清理掉

    在下面的参数的基础上,建议优化点(/etc/sysctl.conf):

    1:增大tcp_max_tw_buckets为200000

    2:修改tcp_timestamps为1(这里会存在风险,当多个客户端通过NAT方式联网并与服务端交互时,服务端看到的是同一个IP,也就是说对服务端而言这些客户端实际上等同于一个,会导致丢包)

    3:减小tcp_fin_timeout为30

    4: 增大端口范围ip_local_port_range 

     

    不过上述修改只能优化tcp的并发能力,还可以通过扩容服务器解决这个问题(目前看来,对业务体验未构成影响,单次业务数据还是可以获取的,扩容优先级可以放低)

  • 相关阅读:
    CH负责内容的两个人——北漂18年(66)
    perl 跨行匹配;
    elk之nginx
    perl 分析binlog 定位错误sql 思路
    rsyslog 日志格式和输出
    rsyslog 定义模板
    rsyslog ~ 波浪号
    过滤器
    rsyslog masg和rawmsg的区别
    金融行业的BI应用分析
  • 原文地址:https://www.cnblogs.com/kabi/p/5162198.html
Copyright © 2011-2022 走看看