250k conexões para comet com node.js

2

Como implementar o node.js para lidar com 250k conexões como servidor comet (o lado do cliente usa o socket.io)?

O uso do nginx como proxy / loadbalancer seria a solução correta? Ou será o HA-Proxy o melhor caminho? Alguém tem experiência no mundo real com conexões de 100k + e pode compartilhar sua configuração? Uma configuração como esta seria a correta (CPU quad core por servidor - > inicie 4 instâncias de node.js por servidor?):

  nginx (as proxy / load balancing server)
        /               |          \
       /                |           \
      /                 |            \
     /                  |             \
node server #1  node server #2  node server #3
4 instances     4 instances     4 instances
    
por Nenad 29.11.2011 / 17:36

1 resposta

1

baunilha nginx não suporta HTTP / 1.1 keepalive para os servidores upstream (backend), que quebra socket.io :( Se você estiver disposto a compilá-lo, você pode ter mais sorte - > link

Embora nessa escala eu me pergunto se seria mais fácil pular a camada do servidor web, roteando as conexões TCP diretamente ...

    
por 29.11.2011 / 18:49