压测过程中并发逐步加大后遇到60%的错误率,查看错误是JMeter网页版聚合报告中显示
Non HTTP response code: java.net.NoRouteToHostException/Non HTTP response message: Cannot assign requested address (Address not available)
这是第二次遇到,故把解决方案记录下来,供大家参考
1、先检查下tcp port range 是否在合理范围内
cat /proc/sys/net/ipv4/ip_local_port_range
32768 60999
1024 65535为centos合理范围,不合理则需要作出修改
2、调低端口释放后的等待时间, 默认为60s, 修改为15~30s
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
3、修改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.(这个根据系统来设置,可能有的系统没有这个文件)文章来源:https://www.toymoban.com/news/detail-760028.html
echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
4、执行命令使设置立即生效文章来源地址https://www.toymoban.com/news/detail-760028.html
sysctl -p
到了这里,关于【JMeter】JMeter压测过程中遇到Non HTTP response code错误解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!