jmeter性能测试踩坑一(Address already in use: connect)

用windows进行jmeter压测出现java.net.BindException: Address already in use: connect

windows机上用JMeter压测,50并发下出现大量接口报“java.net.BindException: Address already in use: connect”错误。

查阅了各种百度博客,
第一种方法:
1、cmd中,用regedit命令打开注册表
2、在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
3、右键Parameters
4、添加新的DWORD,名字为MaxUserPort和TcpTimedWaitDelay
5、分别输入数值数据为65534和30,基数选择十进制;以增大可分配的tcp连接端口数、减小处于TIME_WAIT状态的连接的生存时间
6、修改配置完毕之后记得重启机器才会生效****

原因:Windows 提供给 TCP/IP链接的端口为 1024-5000,并且要四分钟来循环回收他们。就导致我们在短时间内跑大量的请求时将端口占满了。

这个百度都有,但是楼主发现重启之后还是有问题,也不想上服务器。查阅之前的性能测试问题,发现还有一个东西要加。
第二种方法:
就是这个connection-close,每次都把连接 关闭
在这里插入图片描述
这用就不会报错啦。

再次发现压测更大并发压力的时候,依然会报错
第三种方法:
最后我在HTTP请求高级选项中选择了java,没有报这个错了

因为次选项能重复使用TCP连接端口,而选择默认的java,每次请求会建立一个新的链接
在这里插入图片描述

很伤心,并发数1000的时候,依旧报错,后面修改了这里,
去掉默认的勾选在这里插入图片描述
能减少报错率,但是治标不治本,知道后续还会不会有了,最好还是放服务器压测吧。内存大一点。因为发现两台windows机,一台8g内存,一台16g内存,同样的脚本和同样的环境,TPS从相差一倍。有条件的情况下,找一台好一点的压力机,这样就可以控制住,瓶颈是你自己造成的。而不是被测服务器的瓶颈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值