在使用JMeter 压力测试时,出现了这个错误,导致异常月堆积越多
首先在这里说明,这个错误并不是由于我们误操作了什么,而是因为windows本身提供的端口访问机制的问题.
Windows提供给TCP/IP链接的端口为1024-5000,并且需要4分钟来循环回收他们,这便导致我们在短时间内跑大量的请求时将端口占满了.
解决办法:
- cmd输入regedit,打开Windows的注册表,
- 在\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters下,
- 右击 parameters,添加一个新的DWORD, 名字为MaxUserPort(最大用户端口数)
- 然后双击 , 输入数值数据为65534,基数选择十进制(若是分布式运行.控制机器和负载机器都需要这样的操作哈!)
- 在添加一个参数
TCPTimedWaitDelay:30
tcp链接端口回收时间30s - 修改完毕后重启生效!