Cómo escalar Node.js WebSocket Redis Server?

Estoy escribiendo un servidor de chat paraAcani, y tengo algunas preguntas sobreNodo escalado.js ywebsockets con escalabilidad de equilibrador de carga.

¿Qué significa exactamente cargar el saldo de Node.js? ¿Eso significa que habrán ¿Se ejecutan versiones independientes de la aplicación de mi servidor, cada una en un servidor separado?

Para permitir que un cliente transmita un mensaje a todos los demás, almaceno un conjunto de todos loswebSocketConnections abierto en el servidor. Pero si tengon ejecutando versiones independientes de la aplicación de mi servidor, cada una en un servidor separado, entonces tendrén diferentes conjuntos dewebSocketConnections?

Si las respuestas a 1 y 2 son afirmativas, entonces ¿cómo almaceno un conjunto universal dewebSocketConnections (en todos los servidores)? Una forma en la que creo que podría hacer esto es usar Redis Pub / Sub y simplemente tener cadawebSocketConnection suscribirse a un canal en redis.

Pero, entonces, ¿no se convertirá el único servidor de Redis en el cuello de botella? ¿Cómo podría entonces escalar Redis? ¿Qué significa incluso escalar Redis? Eso significa que tengom ¿Versiones independientes de Redis ejecutándose en diferentes servidores? ¿Es eso posible?

Escuché que Redis no escala. ¿Por qué alguien diría eso? Qué significa eso? Si eso es cierto, ¿hay una mejor solución para un pub / sub y / o almacenar una lista de todos los mensajes transmitidos?

Nota: Si su respuesta es que Acani nunca tendría que escalar, incluso si cada uno de los siete mil millones de personas (y en crecimiento) en la Tierra transmitiera un mensaje cada segundo a todos los demás en la tierra, entonces dé una explicación válida.