Bem, algumas respostas para sua pergunta:
-
Para balancear a carga do Node.js, significa exatamente o que você pensou sobre o que é, exceto que você realmente não precisa de um servidor separado, você pode executar mais de um processo do seu servidor de nó na mesma máquina.
-
Cada servidor/processo do seu servidor de nó terá suas próprias conexões, o armazenamento padrão para websockets (por exemplo Socket.IO) é MemoryStore, isso significa que todas as conexões serão armazenadas na memória da máquina, é necessário trabalhar com RedisStore para trabalhar com redis como um armazenamento de conexão.
-
Redis PUB/SUB é uma boa maneira de realizar essa tarefa
-
Você está certo sobre o que disse aqui, o redis não é dimensionado neste momento e executar muitos processos/conexões conectados ao redis pode tornar o redis um gargalo.
-
O Redis não é dimensionado, isso é correto, mas de acordo com esta apresentação, você pode ver que um desenvolvimento de cluster está em alta prioridade no redis e o redis tem um cluster, mas ainda não está estável:(retirado de http://redis. io/baixar)
Onde está o Redis Cluster?
O desenvolvimento do Redis está atualmente focado no Redis 2.6, que trará suporte para scripts Lua e muitas outras melhorias. Esta é a nossa prioridade atual, no entanto, o ramo instável já contém a maioria das partes fundamentais do Redis Cluster. Após a versão 2.6, vamos concentrar nossas energias em transformar o Redis Cluster alfa atual em um produto beta que os usuários possam começar a testar seriamente. É difícil fazer previsões, pois lançaremos o Redis Cluster como estável apenas quando sentirmos que é sólido e útil para nossos clientes, mas esperamos ter uma versão beta razoável para o verão de 2012 e lançar a primeira versão estável antes do final de 2012.
Veja a apresentação aqui:http://redis.io/presentation/Redis_Cluster.pdf