• fastdfs端口号占用过多导致服务器网络拥堵问题


    在测试阶段,前端小姐姐反馈接口返回慢, 查看了一下高峰时间TCP连接的情况,统计命令:
    netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 
    

      

    发现存在大量TIME_WAIT状态的连接
    tcp6       0      0 file.onepass.com:51867  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:52170  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:55700  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:54832  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:44428  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:55182  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:53286  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:56476  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:49767  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:49364  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:41321  file.onepass.com:8848   TIME_WAIT
    tcp6       0      0 file.onepass.com:58141  file.onepass.com:8848   TIME_WAIT
    

      

    通过调整内核参数解决 vi /etc/sysctl.conf 编辑文件,
    加入以下内容:
    net.ipv4.tcp_syncookies = 1 
    net.ipv4.tcp_tw_reuse = 1 
    net.ipv4.tcp_tw_recycle = 1 
    net.ipv4.tcp_fin_timeout = 30 


    然后执行/sbin/sysctl -p让参数生效。

    net.ipv4.tcp_syncookies = 1表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
    net.ipv4.tcp_tw_reuse = 1表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
    net.ipv4.tcp_tw_recycle = 1表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。
    net.ipv4.tcp_fin_timeout修改系統默认的TIMEOUT时间
  • 相关阅读:
    python中break与continue区别
    jmeter正则表达式
    python的input()函数与getpass标准库
    python实例练习-01登录
    python数据类型-字符串
    jmeter操作mysql
    jmeter文件下载
    字符逆序
    求解立方根
    求最小公倍数
  • 原文地址:https://www.cnblogs.com/pzyin/p/13425881.html
Copyright © 2020-2023  润新知