Bem, acontece que eu atingi o limite de velocidade da interface de rede. Após a atualização, tudo está de volta ao normal
Eu tenho 1 domínio com 3 endereços IP. Cada endereço (1 servidor) tem um servidor HAProxy instalado. Além do HAProxy, cada servidor tem 10 processos nodejs executados.
O problema é que existem cerca de 40% dos pedidos pendentes. Às vezes, a solicitação é processada muito rapidamente (em torno de 160ms), às vezes leva em torno de 5s e até o tempo limite. A carga do servidor é muito baixa (todos os 8 núcleos são executados em cerca de 30%), a média de carregamento é 2
Eu fiz um pouco de google e descobri que eu poderia ter ficado sem porta para o HAProxy aceitar conexões (eu não tenho certeza disso)
Eu corro ss -s
e a saída é
Total: 69452 (kernel 69571)
TCP: 106031 (estab 67813, closed 36404, orphaned 570, synrecv 0, timewait 36264/0), ports 0
Transport Total IP IPv6
* 69571 - -
RAW 0 0 0
UDP 15 9 6
TCP 69627 69620 7
INET 69642 69629 13
FRAG 0 0 0
E meu sysctl.conf
vm.overcommit_memory = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_synack_retries = 2
kernel.shmmax = 17179869184
kernel.shmall = 4194304
net.ipv4.ip_local_port_range = 1025 65000
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_max_syn_backlog = 3240000
net.core.somaxconn = 3240000
net.ipv4.tcp_max_tw_buckets = 1440000
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.tcp_congestion_control = cubic
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 15
Eu também tento me conectar diretamente a cada servidor de aplicativos e ver se é o aplicativo que causa as solicitações pendentes. Mas não é por causa do servidor de aplicativos, ele ainda responde super rápido quando eu me conecto diretamente ao servidor de aplicativos
Eu habilitei o log e atualizarei a aparência do haproxy assim que puder
Atualização: juntei algumas informações sobre as solicitações lentas link
Bem, acontece que eu atingi o limite de velocidade da interface de rede. Após a atualização, tudo está de volta ao normal
Tags haproxy