Temos um servidor java em execução no linux em uma porta específica que aceita conexões persistentes para milhares e milhares de usuários. Recentemente, nossos clientes não conseguem se conectar com um erro de tempo limite. Suspeitamos que o tráfego esteja ficando muito alto, mas nosso log java realmente mostra que muitos não estão conectados por segundo.
Suspeitamos que muitos tentem ao mesmo tempo e que sejam basicamente descartados no nível do sistema operacional e, portanto, o programa java nunca tenha a chance de aceitar a conexão? Existe algum tipo de login no linux que pode mostrar alguém tentando acessar um soquete?
iptables -I INPUT -p tcp --dport some_port -m state --state NEW
. Observe que, a menos que você esteja interessado nos detalhes de cada tentativa de conexão, a omissão-j LOG
evita o envio de spam no arquivo de log do sistema com muitos dados desnecessários.