Tente um tamanho de instância maior para o seu nó haproxy. instâncias t1.micro têm rede horrível e desempenho de IO, e eu não ficaria surpreso se uma delas estivesse causando o problema.
Eu sou o teste de estresse ejabberd com Tsung. Configuração das minhas instâncias do EC2 da seguinte forma:
Quando deixo Tsung falar diretamente com a instância do ejabberd, consigo facilmente obter as conexões pretendidas de 35K + em 5 minutos. Quando eu jogo o HAProxy entre os dois, eu obtenho ~ 10K de conexões máximas. Nenhum log de erro HAProxy, a CPU executa 9%, Mem é 18% de uso na instância HAProxy. O ulimit está definido corretamente na instância. Há algo, obviamente, que estou perdendo aqui? Qualquer conselho muito bem-vindo.
Minha configuração do HAProxy da seguinte forma:
global
log 127.0.0.1 local1 notice
log 127.0.0.1 local0 notice
maxconn 512000
user haproxy
group haproxy
defaults
log global
mode tcp
option tcplog
option dontlognull
retries 3
option redispatch
#timeout connect 5000
#timeout client 10000
#timeout server 10000
timeout connect 5s
timeout client 24h
timeout server 24h
listen stats :80
mode http
stats enable
stats uri /haproxy?stats
stats realm Strictly\ Private
stats auth xx:xx
listen ejabberd_proxy :5222
maxconn 512000
mode tcp
retries 2
option redispatch
option tcplog
option tcpka
option clitcpka
option srvtcpka
balance leastconn
server ejabberd1 ip_1:5222 check fall 10
server ejabberd2 ip_2:5222 check fall 10