扩展SockJS跟踪客户

我在扩展我的运行SockJS服务器的Nodejs服务器的过程中。 它是SockJS服务器存储每个连接客户端的基本聊天对象。

基本上我这样存储:

var clients = []; var sockets = {}; // Identify this client socket.name = socket.remoteAddress + ":" + socket.remotePort // Put this new client in the list clients.push(socket); sockets[socket.name] = socket; 

这是我如何写入套接字:

 sockets[socketName].write("{\"type\":\"type\", \"msg\": \"" + escp(obj.msg) + "\", \"name\": \"" + obj.name+ "\", \"location\": \"" + obj.location + "\"}"); 

我的想法是现在扩大并在亚马逊开始更多的实例。 我会在前面的HAProxy负载。

问题是两个人聊天都必须在同一个实例上,因为connectedClients isent在我的ec2 instances共享。

任何想法如何做到这一点? 我需要存储connectedClients在分贝? (这甚至可能)?

基本上我需要在我的实例之间共享socketsclients

       

网上收集的解决方案 "扩展SockJS跟踪客户"