我如何知道我离somaxconn多近?


17

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

  1. 极限测量和上限到底是什么?

  2. 我如何找出自己离极限有多近?

上下文:我最近遇到了一个问题,可以通过提高此限制来纠正该问题。这个问题是断断续续的,所以我不相信它确实已经解决。我想确定当前的[无论此设置上限]数是否大于以前的最大限制128。


Answers:


18

somaxconn确定系统上每个TCP端口允许的最大积压连接数。增加它(建议服务器使用)可以防止出现“连接被拒绝”消息,但是如果服务器无法处理增加的负载,则可能导致连接速度变慢。

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

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

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.