今天为了测试Hyper连接池的性能,用了十万并发进行压测,项目倒是没报错,Jmeter却显示有近乎一半的错误率,查看了Jmeter的日志,才发现了错误。
报错内容java.net.BindException: Address already in use: connect报错原因
原因在于windows默认的TCP/IP端口只有1024-5000个,而且释放的话大概需要4分钟才能够将之前占用的端口释放掉,导致当jmeter请求达到一定数量时提示上述错误
解决办法更改Windows注册表中默认的TCP/IP端口数量
使用cmd输入regedit进入到负载机的注册表,找到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters
在Services目录下:
在Parmeters右键新建DWORD值,命名为MaxUserPort,然后选择十进制并输入数据65534后保存
*** 作完成后务必重启,只有重启才能生效!!!
*** 作完成后务必重启,只有重启才能生效!!!
*** 作完成后务必重启,只有重启才能生效!!!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)