【无标题】高流量大并发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

简单记录于此,备忘。

相关推荐
岚天start2 分钟前
Nginx内置变量详解
运维·nginx
wanhengidc13 分钟前
跨境电商为什么依赖于云手机
运维·服务器·游戏·智能手机·云计算
翼龙云_cloud17 分钟前
亚马逊云渠道商:aws安全组没有加ip用ip访问会有什么问题?
运维·tcp/ip·安全·云计算·aws
@菜菜_达1 小时前
Nginx错误拦截转发 error_page
运维·nginx
云计算老刘1 小时前
10. Linux 系统启动原理
linux·运维·服务器
CS_浮鱼1 小时前
【Linux编程】线程同步与互斥
linux·网络·c++
任聪聪2 小时前
Centos平替系统RockyLinux详细安装教程
linux·运维·centos
zjj5873 小时前
ubuntu虚拟内存
linux·运维·ubuntu
终端行者4 小时前
Nginx 配置Websocket代理 Nginx 代理 Websocket
运维·websocket·nginx
*翊墨*4 小时前
达梦数据库Linux安装
linux·数据库·excel