半队列/全队列长度导致的nginx请求失败

https://www.cnblogs.com/xiaolincoding/p/12995358.html

在 Linux 系统下,TCP存在半连接和全连接的转换的方式,
正如我们所熟知的,tcp连接在通信之前会有两次的 SYN,TCP 在这个状态服务端收到了 SYN 就是我们的半连接状态。
获取当前的半连接状,使用下面的命令来进行半连接的状态统计

[root@account5 /data/home/ramonesliu]# ss -anpt | grep SYN
SYN-RECV   0      0      203.*.*.18:8080               175.143.86.66:54006
SYN-RECV   0      0      203.*.*.18:8080               41.115.94.227:16464
SYN-RECV   0      0      203.*.*.18:8080               180.253.160.211:24346 

在内核中,有一个队列,来存储这些 SYN 状态的tcp连接,如果这个队列的长度过短,就会出现连接溢出丢失的状态

使用 ss 或者

ss -lnt | grep 8080
netstat -s

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注