今天在用jmeter做压力测试时,发现一个问题,当并发线程较高时,报错:java.net.BindException: Address already in use: connect:
原因:windows提供给TCP/IP链接的端口为 1024-5000,并且要四分钟来循环回收它们,就导致我们在短时间内跑大量的请求时将端口占满了,导致如上报错。
解决办法(在jmeter所在服务器操作):
1、打开注册表:ctrl+r 输入regedit
2、进入-计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
3、新建DWORD值,name:TcpTimedWaitDe,value:30(十进制)设置为30秒
4、新建DWORD值,name:MaxUserPort,value:65534(十进制)最大连接数65534
5、完成以上操作以后,需重启机器生效