【JMETER压力测试报错:java.net.BindException: Address already in use: connect】

2022-12-07 14:04:31 来源:51CTO博客


【资料图】

一、现象描述

在windows环境下,使用jmeter进行性能测试时,在并发量较大的情况下,发现有大量的接口报错报错内容为:java.net.BindException: Address already in use: connect

二、原因

经查询资料得知,windows提供给TCP/IP链接的端口为 1024-5000,并且要四分钟来循环回收它们,就导致我们在短时间内跑大量的请求时将端口占满了,导致如上报错。同时对比TPS报错及监控平台连接数,佐证了这一点。

TPS图表,红色框框内为基本全部报错。

同一时间监控平台监控到的连接数情况

对照可以看出,当连接数超过5000左右的时候,开始大量报错。在连接数释放的过程中,又会有请求成功,当再次达到5000的时候,后续的连接又几乎全部失败。

三、解决办法

1.cmd中输入regedit命令打开注册表;2.在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters右键Parameters;3.添加一个新的DWORD,名字为MaxUserPort;4.然后双击MaxUserPort,输入数值数据为65534,基数选择十进制;5.完成以上操作,重新进行测试,就可以解决问题

四、重新测试

TCP没有再报错

连接数达到了8K+

标签: 几乎全部 的情况下 一个新的

上一篇:【JMETER后置处理器--json提取器】
下一篇:天天快资讯丨我用iPad编了个Python贪吃蛇,附源码!