解决 JMeter 端口(Address already in use: connect)耗尽问题

设置动态端口范围(解决 JMeter 端口耗尽问题),需注意系统对动态端口的默认限制 (旧版 Win7 动态端口范围通常为 49152~65535,共 16384 个端口)。以下是完整方案:

一、统计当前已使用的端口数

管理员身份 打开 cmd,执行:

bash 复制代码
netstat -ano | find /c "TCP"

二、确认当前动态端口范围

管理员身份 打开 cmd,执行:

bash 复制代码
netsh int ipv4 show dynamicport tcp

默认输出(Win7 典型配置):

复制代码
协议 tcp 动态端口范围
---------------------------------
启动端口 : 49152
端口数 : 16384

三、修改动态端口范围(扩大范围)

命令(管理员身份执行):

win7修改

bash 复制代码
netsh int ipv4 set dynamicportrange protocol=tcp startport=1025 numberofports=64510

win10修改

bash 复制代码
netsh int ipv4 set dynamicport tcp start=1024 num=64512
  • start=1024:动态端口起始值(最小可用端口)。
  • num=64512:端口数量(1024 + 64512 - 1 = 65535,刚好覆盖 1024~65535)。

四、验证修改是否生效

执行以下命令查看配置:

bash 复制代码
netsh int ipv4 show dynamicport tcp

若输出为:

复制代码
协议 tcp 动态端口范围
---------------------------------
启动端口 : 1025
端口数 : 64510

则修改成功。

五、缩短 TIME_WAIT 超时(彻底解决端口耗尽)

高并发下,TIME_WAIT 状态的端口会暂时占用资源。需缩短 TIME_WAIT 超时时间(需重启电脑生效):

  1. 打开注册表编辑器:regedit
  2. 定位到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  3. 新建 DWORD(32位)值 ,命名为 TcpTimedWaitDelay
  4. 设置值为 30(单位:秒,建议 30~60 秒,避免过小影响网络稳定性)

六、JMeter 端优化(减少端口消耗)

在 JMeter 的 HTTP 请求HTTP 请求默认值 中,调整连接池和超时参数:

  1. 打开 HTTP 请求 面板 → 切换到 Advanced 标签。
  2. 设置:
    • Implementation:选 HttpClient4(更高效的长连接管理)。
    • Connection Timeout:设为 10000(连接超时,毫秒)。
    • Response Timeout:设为 30000(响应超时,毫秒)。
    • Use KeepAlive:勾选(复用 TCP 连接,减少端口消耗)。

七、测试验证

重新运行 JMeter 压测,观察是否还报 Address already in use: connect。若仍报错,可尝试:

  • 降低 JMeter 并发线程数(临时缓解)。
  • 检查是否有其他程序占用大量端口(如浏览器、后台服务)。

关键说明

  • Win7 对动态端口的修改无需重启 ,但 TIME_WAIT 超时修改需重启电脑。
  • 若修改后仍报错,可能是系统策略限制(如组策略强制固定动态端口范围),需联系管理员解除限制。

通过以上步骤,可彻底解决JMeter 压测的"端口已占用"问题。

相关推荐
糖果店的幽灵7 天前
软件测试接口测试从入门到精通:JMeter接口测试
软件测试·jmeter·接口测试·压力测试·性能测试
1candobetter8 天前
JMeter 性能压测监控实战
jmeter
wenying_443237449 天前
软件测试—JMeter—跨线程组关联
jmeter·压力测试
川石课堂软件测试9 天前
UI自动化测试|下拉选择框&弹出框&滚动条操作实践
开发语言·python·jmeter·ui·docker·单元测试·harmonyos
测试199812 天前
Jmeter性能压测:TPS与QPS
自动化测试·软件测试·python·jmeter·测试用例·压力测试·性能测试
川石课堂软件测试12 天前
UI自动化测试|XPath元素定位实践
功能测试·测试工具·jmeter·microsoft·ui·postman·harmonyos
wenying_4432374412 天前
软件测试—Jmeter后置处理器—XPath提取器
jmeter
wenying_4432374413 天前
软件测试—Jmeter后置处理器—正则表达式提取器
jmeter·压力测试