window端口数导致的nacos和jmeter连接数限制问题解决方法

https://blog.csdn.net/zhangxiaohui4445/article/details/100162317

Windows 2008 以后,微软遵从国际标准,动态端口的数量调整为16384个 (从49152起始,到65536结束),如果服务器对外有大量连接,而TCP默认的Time Wait Delay时间为2分钟这可能导致端口耗尽。

问题

  1. JMeter做压力测试时出现 java.net.BindException: Address already in use: connect
  2. Nacos client出现code:500 msg: java.net.BindException: Address already in use: connect

原因:windows提供给TCP/IP链接的端口有限,并且要几分钟来循环回收它们,就导致我们在短时间内跑大量的请求时将端口占满了,导致如上报错。

1、查询window动态端口数

请以管理员身份打开CMD,运行如下命令:

netsh interface ipv4 show tcpstats
netsh int ipv4 show dynamicport tcp

查看一下,是否端口耗尽,目前端口数量是多少,如果确认端口耗尽。

2、 增大动态端口数量(不需要重启)

netsh int ipv4 set dynamicport tcp start=1025 num=60000

其中1025是起始端口号,num为数量,上述命令意思为从1025开始的60000个端口,到61025结束。

注:该步骤无需重启机器, 立即生效
修改后运行命令检查配置

3、注册表中增大端口相关配置(需要重启)

1、打开注册表:regedit
2、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\TCPIP\Parameters
3、新建 DWORD值,name:TCPTimedWaitDelay,value:30(十进制) –> 设置为30秒,默认是240秒
4、新建 DWORD值,name:MaxUserPort,value:65534(十进制) –> 设置最大连接数65534
5、重启系统

在这里插入图片描述

参考

https://www.bbsmax.com/A/n2d9QBQQdD/

https://blog.csdn.net/MenofGod/article/details/84589751

https://blog.csdn.net/zhangxiaohui4445/article/details/100162317

https://blog.csdn.net/qq_30549833/article/details/96431245

https://blog.csdn.net/xinfeixiang2019/article/details/103474065

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值