Сервис тормозит, CPU не забит, но новые запросы не проходят или идут с задержкой. Это классическая ситуация, когда проблема не в производительности, а в лимитах ядра и сети.
Сначала проверяем файловые дескрипторы - частая причина “тихих” отказов:
cat /proc/sys/fs/file-nr
lsof | wc -l
Если значение близко к лимиту - новые соединения или файлы просто не создаются, хотя CPU свободен.
Дальше conntrack - если есть NAT или firewall:
cat /proc/sys/net/netfilter/nf_conntrack_count
cat /proc/sys/net/netfilter/nf_conntrack_max
Когда счётчик близок к max - появляются дропы и таймауты без нагрузки на CPU.
Теперь backlog и очередь входящих соединений:
ss -lnt
cat /proc/sys/net/core/somaxconn
Если растёт очередь на LISTEN или SYN backlog забит - новые подключения “висят”, хотя сервис жив.
