朋友公司的产品运行在windows+nginx+tomcat平台,发现链接接稍微一大,访问就有问题。在主机上经过netstat进行查看时,也发现有大量time_wait的状况 。在linux平台上这个问题很是好解决,经过sysctl.conf调节tcp/ip参数便可。windows下经确认也有相似的调节机制,其叫dynamicportrange。html
1、windows7/win2008平台下linux
一、查看可用端口数nginx
如下是我在win7下查看的结果windows
C:\Users\thinkpad>netsh int ipv4 show dynamicportrange tcp 协议 tcp 动态端口范围 --------------------------------- 启动端口 : 1025 端口数 : 13976
win2008下经查是 49152 through 65535 ,可用端口数16384个。tomcat
二、netsh命令修改可用端口数tcp
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打开注册表,添加htm
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters “MaxUserPort”=dword:0000fffe “TcpTimeWaitDelay”=dword:0000005 (缩短为5秒)
参考页面,微软support页。blog
2、windows xp/win2003ip
如下是从一些网站上找到的信息:
基于上不少网站只提示了win2003的可用端口范围,但并无给出怎么去调节win2003主机的端口调节方法 。这里一样经过微软官方技术站,找到了修改方法。
一、修改可用端口范围
打开注册表--定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters --编辑新建DWORD Value ,新增MaxUserPort
Value data: Enter a decimal value between 5000 and 65534 here
须要特别注意,修改完成后,须要重启主机生效。
二、修改time_wait值
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters On the Edit menu, click New, DWORD Value Value name:TcpTimedWaitDelay Value data :
默认值是240秒(可用范围是30-300),这里修改成30秒后,重启系统使修改生效。
参考页面:microsoft msdn页