【无标题】高流量大并发Linux TCP性能调优

最近在使用jmeter做压测,当jmeter的并发量高的时候发现jmeter服务器一直报错Cannot assign requested address,

查看了一下发现系统中存在大量处于TIME_WAIT状态的tcp端口

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

TIME_WAIT 50013

ESTABLISHED 27

SYN_RECV 1

在网上查阅了一些tcp参数的相关资料,最后通过修改了几个系统内核的tcp参数缓解了该问题:
vi /etc/sysctl.conf
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
sysctl -p

其中:

net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;

net.ipv4.tcp_tw_recycle = 1 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

修改完成并生效后,系统中处于TIME_WAIT状态的tcp端口数量迅速下降到100左右:

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

TIME_WAIT 82

ESTABLISHED 36

简单记录于此,备忘。

相关推荐
Fɪʀᴇᴡᴏʀᴋs39 分钟前
Oceanbase数据库—基于社区版本的数据库集群管理
运维·数据库·oceanbase
HalvmånEver1 小时前
Linux:基础开发工具(五)
linux·运维·服务器
qq_278984131 小时前
ubuntu vlan网络设置
linux·服务器·网络
q***58191 小时前
基础篇:Linux安装redis教程(详细)
linux·运维·redis
小二·1 小时前
Linux 高频面试题(50道 + 详细答案)
linux·运维·服务器
z***39621 小时前
Nginx中如何配置WebSocket代理?
运维·websocket·nginx
忆林5201 小时前
请求服务任何资源(静态/动态)都返回主页数据?多nginx针对单域名的多服务配置
运维·nginx
FLPGYH2 小时前
BMC 深度解析:服务器带外管理的核心技术架构与实践
linux·服务器·c++·驱动开发
史丹利复合田2 小时前
在openEuler上安装Atune并成功运行
linux
q***44922 小时前
如何在 Ubuntu 22.04 上安装 MySQL
linux·mysql·ubuntu