Temos a seguinte configuração: Um servidor nginx como balanceador de carga na frente de quatro servidores de aplicativos de trabalho. O servidor nginx recebe cerca de 100 solicitações por segundo, às vezes mais do que isso, a conexão ativa está pairando em média em 110.
Em um intervalo regular (1-2 segundos), o aplicativo que acessa o balanceador de carga nginx obtém um grupo de solicitações com falha nas quais a conexão TCP não pode ser estabelecida (tempo limite de conexão). O problema é resolvido rapidamente e o próximo grupo de conexões é processado corretamente até a próxima onda de tempos limite de conexão.
Eu acho que não é uma quantidade enorme de carga e o nginx não deve ter problemas em lidar com isso. Meu primeiro palpite foi ajustar as configurações de sysctl do ipv4 com base em várias páginas de ajuda na internet, mas sem sucesso até agora.
Eu já aumentei o intervalo de portas e reduzi o fin_timeout para 30. Existem muitas conexões TIME_WAIT mostradas em netstat (~ 11k).
Alguém tem uma ideia do que fazer nesses casos? Estou ciente de que pode não haver uma resposta definitiva sobre qual é o problema real, mas os indicadores são bem-vindos! Obrigado!