使用Jmeter进行压力测试,当持续增加线程数,发现Jmeter监听器中会抛出Address already in use
的错误,如下:

通过查找资料,发现出现此问题的原因是因为 Windows 系统提供给TCP/IP链接的端口范围为 1024-5000,并且最多需要四分钟的时间来循环回收它们,这就导致我们在短时间内跑大量的请求时将此区间的端口占满了,导致如上报错。
解决办法如下:
- 打开施压机注册表;
- 在
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
右键Parameters
; - 添加一个新的DWORD,名字为MaxUserPort;
- 然后双击MaxUserPort,输入数值数据为65534,基数选择十进制;
- 重启机器,问题解决,亲测有效;
网友评论