zoukankan      html  css  js  c++  java
  • windows下缩短time_wait的时间

    最近线上遇到windows机器访问其他机器的时候失败的情况。实际就是本地的端口不够用造成的。


    D:>netsh interface ipv4 show dynamicportrange protocol=tcp


    Protocol tcp Dynamic Port Range
    ---------------------------------
    Start Port : 49152
    Number of Ports : 16384


    D:>netsh interface ipv4 show tcpstats


    MIB-II TCP Statistics
    ------------------------------------------------------
    Timeout Algorithm: Van Jacobson's Algorithm
    Minimum Timeout: 10
    Maximum Timeout: 4294967295
    Maximum Connections: Dynamic
    Active Opens: 402947
    Passive Opens: 989620
    Attempts Failed: 122047
    Established Resets: 49384
    Currently Established: 135
    In Segments: 47651175
    Out Segments: 45510477
    Retransmitted Segments: 465369
    In Errors: 0
    Out Resets: 65865
    这个能用的端口实际就16384个,可以直接 netstat -atn查看一下每个状态的数量。如果对外做大量的请求会造成本地端口不够用。


    可以修改一下起始端口:
    netsh int ipv4 set dynamicport tcp start=2000 num=63000
    netsh int ipv4 set dynamicport udp start=2000 num=63000
    netsh int ipv6 set dynamicport tcp start=2000 num=63000
    netsh int ipv6 set dynamicport udp start=2000 num=63000


    然后修改一下注册表缩短time-wait的时间。
    regedit打开注册表,添加
    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters
    “MaxUserPort”=dword:0000fffe
    “TcpTimeWaitDelay”=dword:0000005 (缩短为5秒)

  • 相关阅读:
    Golang网络编程-套接字(socket)篇
    Golang并发编程-传统的同步工具"锁"实战篇
    Golang并发编程-select实战篇
    Golang并发编程-channel实战篇
    Golang并发编程-Go程(Goroutine)实战篇
    Jenkins实现简单流程部署代码
    Jenkins权限管理
    Jenkins插件管理篇
    Jenkins部署实战案例
    Golang常见的字符串函数操作实战篇
  • 原文地址:https://www.cnblogs.com/lidabo/p/10321056.html
Copyright © 2011-2022 走看看