使用jmeter对多个项目做性能测试后发现,jmeter很多默认配置是无法支持我们直接开始性能测试任务的;所以在此本人收集了一些未修改配置时会出现的常见问题,并给出了对应的解决方案
问题一:接口错误信息为java.net.BindException: Address already in use
原因:
短时间内new socket操作很多,而socket.close()操作并不能立即释放绑定的端口,而是把端口设置为TIMEWAIT 状态,过段时间才释放,(用netstat -na可以看到),最后系统资源耗尽(windows上是耗尽了pool of ephemeral ports ,这段区间在1024-5000之间)。
解决办法:
1.按win+R打开运行,输入regedit命令打开注册表;
2.在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters下,
1)右击parameters,添加一个新的DWORD,名字为MaxUserPort
2)然后双击MaxUserPort,输入数值数据为65534,基数选择十进制
3.重启电脑
问题二:运行jmeter脚本后无数据返回,jmeter server显示连接后就立即结束
原因:
这是刚接触jmeter工具不久的朋友,或者是在使用分布式部署之后容易犯的错误,Jmeter执行时未获取到参数化文件csv data set config地址中的数据
解决办法:
jmeter测试数据slave机器一定要存放,并且master机器的csv测试数据地址要以填写slave机器的地址