我正在开发一个使用SocketIO的项目,并且应该可以进行水平扩展。我正在使用
我能够使用roundrobin方法将传入的Socket连接重定向到节点服务器。套接字连接是稳定的,如果我使用socket.emit()我接收数据。我也能够发送到连接到同一节点服务器的其他套接字连接。
我在以下情况中面临问题:
用户A连接到节点服务器1,用户B连接到节点服务器2
我的目的是将套接字数据存储在redis中
如果用户A想要向用户B发送一些数据,我如何告诉节点服务器2从节点服务器1向用户B发送数据
请让我知道如何实现这一目标(如果可能,请参考参考资料)。
提前致谢。
答案 0 :(得分:0)
这种情况与Redis
的Pub / Sub情况相匹配。
如果还没有,请尝试Pub/Sub。
答案 1 :(得分:0)
看看socket.io Redis adapter。它应该正是您所需要的。
clients()方法特别有希望。请记住,socket.io为每个客户端创建一个唯一的空间。