Как узнать, насколько я близок к somaxconn?

Как узнать, насколько я близок к somaxconn?

Параметр sysctl net.core.somaxconnпо умолчанию равен 128 (в наших системах), но его можно увеличить.

  1. Что именно означает этот предельный показатель и ограничение?

  2. Как узнать, насколько я близок к пределу?

Контекст: Недавно у меня возникла проблема, которая, как мне показалось, была исправлена ​​путем повышения этого лимита. Проблема была прерывистой, поэтому я не верю, что она действительно исправлена. Я хотел бы узнать, превышает ли текущее число [каких бы ограничений ни устанавливал этот параметр] предыдущий максимальный лимит в 128.

решение1

somaxconnопределяет максимальное количество отложенных соединений, разрешенных для каждого порта TCP в системе. Увеличение этого значения (рекомендуется для серверов) может предотвратить сообщения «подключение отклонено», но может привести к замедлению соединений, если сервер не сможет справиться с возросшей нагрузкой.

Вы можете проверить текущее отставание по netstat -ant | grep -c SYN_RECданнымэта страница. Он подсчитает, сколько соединений находятся в состоянии «SYN получен», что означает, что система получила пакет SYN (запрос на соединение), но еще не подтвердила его.

Если ваша система ssустановлена, вы также можете использовать ss -sдля отображения сводки соединений. Найдите synrecvв выводе или ss -s | grep -Po '(?<=synrecv )\d+(?=,)'просто напечатайте номер.

Связанный контент