
На наших серверах есть одна конкретная зависимость (java jar), которая обеспечивает в общей сложности 1024 соединения с различными удаленными серверами (библиотека работает как сервис обнаружения).
Периодически наблюдается, что все соединения в пуле соединений исчерпываются и нет доступных соединений для входящего трафика к этой конкретной службе. В таких случаях перезапуск такой службы является единственным способом освободить соединения.
При возникновении таких проблем netstat показывает, что ряд соединений (более 1000) находятся в состоянии ESTABLISHED и имеют очень большое значение в recvQ.
tcp 71464 0 localhost:57076 remote-host1:31200 ESTABLISHED
tcp 70512 0 localhost:47611 remote-host2:31200 ESTABLISHED
tcp 66184 0 localhost:44825 remote-host3:31200 ESTABLISHED
tcp 70512 0 localhost:40802 remote-host4:31200 ESTABLISHED
tcp 70016 0 localhost:58045 remote-host5:31200 ESTABLISHED
tcp 71464 0 localhost:35375 remote-host6:31200 ESTABLISHED
tcp 71464 0 localhost:48860 remote-host7:31200 ESTABLISHED
В чем может быть проблема? Соединение не получает данные от удаленного хоста.