使用redis以socket.io水平缩放express / node.js

我正在试图通过后端快速扩展。 问题是,每当用户进来或如果我重新启动服务器,它会得到一个新的socket.id。 另外我不能保存整个套接字到内存中,因为它给我一个[圆形JSON]的问题。 如何将套接字的某个部分保存到redis中,以便从其他服务器检索相同的套接字?

你需要从socket.id中解耦用户。 socket.id是易失性的,即使浏览器刷新也可以改变。 相反,当用户套接字连接时,请查看传递的握手数据,并使用该数据将套接字关联到用户。 至于在Redis中保存套接字数据,已经可以使用socket.io-redis为您处理。

看看这个链接来扩展socket.io:http://socket.io/docs/using-multiple-nodes

Interesting Posts