Como sei se estou perto do somaxconn?

17

A opção sysctl net.core.somaxconnassume como padrão 128 (em nossos sistemas), mas pode ser aumentada.

  1. O que exatamente é esse limite de medição e nivelamento?

  2. Como descubro o quão perto estou do limite?

Contexto: recentemente tive um problema que parecia ter sido corrigido ao aumentar esse limite. O problema era intermitente, por isso não confio que esteja realmente resolvido. Gostaria de descobrir se o número atual de [qualquer que seja esse limite de configuração] seja maior que o limite máximo anterior de 128.

Andrew
fonte

Respostas:

18

somaxconndetermina o número máximo de conexões acumuladas em atraso permitidas para cada porta TCP no sistema. Aumentá-lo (recomendado para servidores) pode impedir mensagens de "conexão recusada", mas pode resultar em conexões lentas se o servidor não puder lidar com o aumento de carga.

Você pode verificar a lista de pendências atual de netstat -ant | grep -c SYN_RECacordo com esta página . Ele conta quantas conexões estão no estado "SYN recebido", o que significa que o sistema recebeu um pacote SYN (solicitação de conexão), mas ainda não o reconheceu.

Se o seu sistema estiver ssinstalado, você também poderá usar ss -spara exibir um resumo das conexões. Procure synrecvna saída ou ss -s | grep -Po '(?<=synrecv )\d+(?=,)'apenas imprima o número.

miken32
fonte