java.net.NoRouteToHostException: Cannot assign requested address
来源:互联网 发布:淘宝店怎么才能有人气 编辑:程序博客网 时间:2024/06/05 11:22
今天压力测试时, 刚开始出现了很多异常, 都是 java.net.NoRouteToHostException: Cannot assign requested address.
经网上查资料, 是由于linux分配的客户端连接端口用尽, 无法建立socket连接所致,虽然socket正常关闭,但是端口不是立即释放, 而是处于TIME_WAIT状态, 默认等待60s后才释放。
查看linux支持的客户端连接端口范围, 也就是28232个端口:
cat /proc/sys/net/ipv4/ip_local_port_range
32768 - 61000
解决方法:
1. 调低端口释放后的等待时间, 默认为60s, 修改为15~30s
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
2. 修改tcp/ip协议配置, 通过配置/proc/sys/net/ipv4/tcp_tw_resue, 默认为0, 修改为1, 释放TIME_WAIT端口给新连接使用。
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
3. 修改tcp/ip协议配置,快速回收socket资源, 默认为0, 修改为1.
echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
通过上面3项调整, 压力测试运行正常。
经网上查资料, 是由于linux分配的客户端连接端口用尽, 无法建立socket连接所致,虽然socket正常关闭,但是端口不是立即释放, 而是处于TIME_WAIT状态, 默认等待60s后才释放。
查看linux支持的客户端连接端口范围, 也就是28232个端口:
cat /proc/sys/net/ipv4/ip_local_port_range
32768 - 61000
解决方法:
1. 调低端口释放后的等待时间, 默认为60s, 修改为15~30s
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
2. 修改tcp/ip协议配置, 通过配置/proc/sys/net/ipv4/tcp_tw_resue, 默认为0, 修改为1, 释放TIME_WAIT端口给新连接使用。
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
3. 修改tcp/ip协议配置,快速回收socket资源, 默认为0, 修改为1.
echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
通过上面3项调整, 压力测试运行正常。
- java.net.NoRouteToHostException: Cannot assign requested address
- 数据库--异常--java.net.NoRouteToHostException: Cannot assign requested address
- solr java.net.NoRouteToHostException: Cannot assign requested address 错误
- java.net.BindException: Cannot assign requested address
- java.net.BindException: Cannot assign requested address
- linux--异常--NoRouteToHostException: Cannot assign requested address有关问题
- NoRouteToHostException: Cannot assign requested address 出现原因及解决方案
- java.net.BindException: Cannot assign requested address: JVM_Bind:8080
- java.net.BindException: Cannot assign requested address: JVM_Bind:8080解决办法
- 关于错误:java.net.BindException: Cannot assign requested address
- java.net.BindException: Cannot assign requested address: JVM_Bind
- java.net.BindException: Cannot assign requested address 异常处理
- tomcat java.net.BindException: Cannot assign requested address
- Caused by: java.net.BindException: Cannot assign requested address: bind
- java.net.BindException: Cannot assign requested address:port
- tomcat启动报java.net.BindException: Cannot assign requested address
- java.net.BindException: Cannot assign requested address解决之道
- java.net.BindException: Cannot assign requested address: bind
- Android GPS杂记(1)
- 判断文件是否PE文件,是否GUI程序
- 问题和方案
- Dijkstra 求最短路 最大流
- hdoj_2001 计算两点间的距离
- java.net.NoRouteToHostException: Cannot assign requested address
- android 开机自启动服务或应用
- 关于php单引号和双引号的使用
- 23种设计模式(2):工厂方法模式
- 牛腩视频总结二 总体思维把握
- JAXWS学习(一)- HelloWorld
- 【ubuntu】解决UbuntuOne无法同步
- Learn to Write Your Makefile
- Android应用开发--MP3音乐播放器代码实现(二)