java.net.NoRouteToHostException: Cannot assign requested address 问题分析(端口被用完的解决方法)

问题:
错误原因: 由于liunx 分配的客户端连接端口用尽,无法建立socket连接所致,虽然socket正常关闭,但是端口不是立即释放,而是处于 TIME_WAIT 状态,默认等待60s后释放。
查看liunx支持的客户端连接端口范围,也就是 28232 个端口。 cat /proc/sys/net/ipv4/ip_local_port_range32768 - 61000
解决方法:
1. 调低端口释放后的等待时间,默认为60s,修改为15~30s。echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
2. 修改 tcp/ip 协议配置,通过配置 /proc/sys/net/ipv4/tcp_tw_reuse,默认为0,修改为1,释放TIME_WAIT端口给新连接使用。 echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
3. 修改 ctp/ip 协议配置,快速回收socket资源,默认为0.修改为1。echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
https://blog.csdn.net/weixin_43757847/article/details/88188091
https://my.oschina.net/shichangcheng/blog/1560864

伟程君帮忙找的
后记:
找到解决方法了
修改JMeter.properties中改动httpclient4.idletimeout=<time in ms> 设置成自己认为合理的时间,一般可设置成10-60s(表示连接空暇10s后才会断开),注意这边单位是ms。
参考: https://blog.csdn.net/Stesthu/article/details/87968927
后记:
前面对这个概念有点误解了,建立长连接后,httpclient4.idletimeout这里意思是 长链接端口一空闲就断开,比如服务器还没响应回来空闲了直接断开,导致报错。这里时间应该设置长一点,保持长连接一直保持连接
参考: https://www.cnblogs.com/kaibindirver/p/11957645.html 要使用长连接还要配置一下 请求器见连接有讲
查看端口有没用完 netstat -an 查看是否有端口在 timewait
https://i-beta.cnblogs.com/posts/edit-done;postId=11956755
后记:
配置长连接后,依旧会有报错问题,最后是要修改mac上端口的释放时间 参考: https://www.cnblogs.com/kaibindirver/p/11958506.html
而且在jmeter模拟发送请求的时候,请求头记得要加上
java.net.NoRouteToHostException: Cannot assign requested address 问题分析(端口被用完的解决方法)的更多相关文章
- 在linux上用jmeter压测时出现很多异常java.net.NoRouteToHostException: Cannot assign requested address.
今天压力测试时, 刚开始出现了很多异常, 都是 java.net.NoRouteToHostException: Cannot assign requested address. 经网上查资料, 是由 ...
- java.net.NoRouteToHostException: Cannot assign requested address
今天压力测试时, 刚开始出现了很多异常, 都是 java.net.NoRouteToHostException: Cannot assign requested address. 经网上查资料, 是 ...
- com.sun.xml.internal.ws.server.ServerRtException: Server Runtime Error: java.net.BindException: Cannot assign requested address: bind
在发布 web service 时报错: Endpoint.publish(publishAddress, hl7MessageReveiver); com.sun.xml.internal.ws.s ...
- tomcat java.net.BindException: Cannot assign requested address 解决方法
今天线上TOMCAT启动时遇到了下比较麻烦的问题,错误如下: 21-Apr-2016 15:14:19.077 SEVERE [main] org.apache.catalina.core.Stand ...
- Tomcat启动报错:严重: StandardServer.await: create[8005] java.net.BindException: Cannot assign requested address
org.apache.catalina.core.StandardServer await SEVERE: StandardServer.await: create[8005]: ...
- java.net.BindException: Cannot assign requested address: bind
异常信息 时间:2017-03-16 10:21:05,644 - 级别:[ERROR] - 消息: [other] Failed to start end point associated with ...
- tomcat启动端口号报错java.net.BindException: Cannot assign requested address
异常信息 时间:2017-02-09 15:09:59,829 - 级别:[ERROR] - 消息: [other] Failed to start end point associated with ...
- 服务器启动socket服务报错 java.net.BindException:Cannot assign requested address
错误信息: 2017-06-13 11:18:00,865 [GateServer.java:82][ERROR]:启动服务出错了java.net.BindException: Cannot ass ...
- Tomcat启动异常 java.net.BindException: Cannot assign requested address: JVM_Bind
从Apache官网下载的tomcat7,在MyEclipse中启动时抛出如下异常: 严重: StandardServer.await: create[localhost:8005]: java.net ...
随机推荐
- C++中得sort函数的比较函数(第三个参数)为什么要声明为static
sort中的比较函数compare要声明为静态成员函数或全局函数,不能作为普通成员函数,否则会报错. 因为:非静态成员函数是依赖于具体对象的,而std::sort这类函数是全局的,因此无法再sort中 ...
- 查看mysql日志文件
开启mysql日志 /etc/mysql/mysql.conf.d/mysqld.cnf sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 找到第68,69行 前面 ...
- python通过globals()函数获取全局变量,并销毁全局变量
如果想获取python程序中所有全局变量的信息,并将其销毁,可以定义如下函数 def clear(): for key, value in globals().items(): if callable ...
- 指数基金介绍专栏(8):国企指数(H股指数)详细介绍,最新资料解析,看这一篇就够了
作者:牛大 | 公众号:定投五分钟 大家好,我是牛大.每天五分钟,投资你自己:坚持基金定投,终会财富自由! 昨天牛大给大家介绍了恒生指数,没看的朋友可以去公众号看一下. 指数基金介绍专栏(7):恒生指 ...
- Default Trace 查找日志文件快速增长的原因
select loginname, loginsid, spid, hostname, applicationname, servername, databasename, objectname, e ...
- 使用对象,面向对象创建div的方式
<script> // //对象div的创建 // var div = document.createElement("div"); // document.body. ...
- learning java AWT 布局管理器 GridBagLayout
在GridBagLayout布局管理器中,一个组件可以跨越一个或多个网格,并可以设置各网格的大小互不相关. import java.awt.*; public class GridBagTest { ...
- info命令
info命令也可以查看命令的信息,但是和man命令不同,info命令如同一本书,一个命令只不过是书中的一个章节. 1.基本结构: 输入:info ls ls命令只不过是整个文档的10.1章节. 而在章 ...
- Spark-Hadoop、Hive、Spark 之间是什么关系?
作者:Xiaoyu Ma链接:https://www.zhihu.com/question/27974418/answer/38965760来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商 ...
- golang 斐波那契数
golang 斐波那契数 package main import "fmt" /* 斐波那契数,亦称之为斐波那契数列(意大利语: Successione di Fibonacci) ...