【Windows Jmeter压测端口占用问题解决】

解决方案:

扩大端口数量:
	设置 windows下最大端口数 65534,尝试将端口资源数设置为最大,windows最大能支持65534个端口。

步骤:

1、使用 win + R 快捷键打开 cmd,输入 regedit 命令打开注册表

2、 找到计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters目录。

3、右击 Parameters,添加一个新的 DWORD,命名为MaxUserPort。

4、然后双击 MaxUserPort,输入 65534,基数选择 十进制(如果是分布式运行的话,控制机器和负载机器都需要这样操作)。

5、 修改配置完毕后, 需要重启 windows 才会生效

扩展1:

**说明:**
**windows下的端口 Time_Wait 导致端口无法使用**

**解决方案:**
1: 使用 win + R 快捷键打开 cmd,输入 regedit 命令打开注册表。
2: 找到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters目录。
3: 右击 parameters,添加一个新的DWORD,命名为 TcpTimedWaitDelay,将值设置为30, 缩短 TIME_WAIT 的等待时间。
4: 重启windows,配置项生效。

扩展2:

**说明:**
Close_Wait 会占用一个连接,网络可用连接小。当数量过多时,可能会引起网络性能下降,
并占用系统非换页内存。尤其是在有连接池的情况下(比如 HttpRequest),会耗尽连接池的网络连接数,导致无法建立网络连接。

**CLOSE_WAIT 产生原因**
一般情况下是因为 TCP 连接没有调用关闭方法,需要应用来处理网络链接关闭。
如果是Web请求,经常是因为 Response 的 BodyStream 没有调用 Close。举个例子,Widnows 下使用 HttpWebRequest 
一定要保证 GetRequestStream 和 GetResponse 对象关闭,否则容易造成连接处于 CLOSE_WAIT 状态。
TCP的 KeepLive 功能, 操作系统 默认 7200秒 (2小时) 自动清理一次 CLOSE_WAIT 的连接,满足不了高并发下的端口需求数。支持自定义配置。

**解决方案:**
1: 使用 win + R 快捷键打开 cmd,输入 regedit 命令打开注册表。
2: 找到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters目录。
3: 在该目录下添加新的配置项。设置合理的Keepalive参数。
	"KeepAliveTime"=dword:006ddd00
	"KeepAliveInterval"=dword:000003e8
	"MaxDataRetries"="5"
4: 重启windows,配置项生效
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

仙女肖消乐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值