Параметр sysctl по net.core.somaxconn
умолчанию равен 128 (в наших системах), но может быть повышен.
Что именно этот предел измеряет и ограничивает?
Как узнать, насколько я близок к пределу?
Контекст: недавно у меня была проблема, которая, казалось, была исправлена путем повышения этого лимита. Проблема была периодической, поэтому я не верю, что она действительно исправлена. Я хотел бы выяснить, больше ли текущее число [независимо от этого ограничения настройки], чем предыдущий максимальный предел 128.
linux
performance-tuning
Андрей
источник
источник
Ответы:
somaxconn
определяет максимальное количество разрешенных подключений, разрешенных для каждого TCP-порта в системе. Увеличение его (рекомендуется для серверов) может предотвратить появление сообщений об отказе в соединении, но может привести к медленным соединениям, если сервер не может справиться с повышенной нагрузкой.Вы можете проверить текущее отставание в
netstat -ant | grep -c SYN_REC
соответствии с этой страницей . Он будет подсчитывать, сколько соединений находится в состоянии «получено SYN», то есть система получила пакет SYN (запрос соединения), но еще не подтвердила его.Если ваша система
ss
установлена, вы также можете использоватьss -s
для отображения сводки подключений. Ищитеsynrecv
в выводе илиss -s | grep -Po '(?<=synrecv )\d+(?=,)'
просто напечатайте номер.источник