我如何知道我离 somaxconn 有多近?

And*_*rew 21 linux performance-tuning

sysctl 选项net.core.somaxconn默认为 128(在我们的系统上),但可以提高。

  1. 这个限制测量和封顶究竟是什么?

  2. 我如何知道我离极限有多近?

上下文:我最近遇到了一个问题,似乎可以通过提高此限制来纠正。问题是间歇性的,所以我不相信它真的解决了。我想知道 [无论此设置上限] 的当前数量是否大于之前的最大限制 128。

mik*_*n32 24

somaxconn确定系统上每个 TCP 端口允许的最大积压连接数。增加它(推荐用于服务器)可以防止“连接被拒绝”消息,但如果服务器无法处理增加的负载,它可能会导致连接缓慢。

您可以netstat -ant | grep -c SYN_REC根据此页面查看当前积压。它将计算有多少连接处于“收到 SYN”状态,这意味着系统已收到 SYN 数据包(连接请求)但尚未确认。

如果您的系统已经ss安装,您还可以使用ss -s来显示连接摘要。synrecv在输出中查找,或ss -s | grep -Po '(?<=synrecv )\d+(?=,)'仅打印数字。