与在多核心服务器集群使用socket.io好办法吗?(Good way to use socket.

2019-07-30 04:39发布

我创建了一个应用程序的NodeJS这在单个核心工作正常。 此应用程序使用socket.io光与快速通信。

现在,我想垂直扩展我的应用程序,使IT使用多核系统上运行cluster模块中的NodeJS。

在我的应用程序存储在Redis的数据所需的一切,因此,没有处理一些基本的数据和会话的一个问题。

然而,当我使用产卵集群中的多个工作进程,似乎每个工人都有自己的插座处理。

例如,让我们假设有一个名为“客户”的房间聊天室。

用户A和用户B连接到室,它们被分配到不同的工作进程。

由于他们在不同的PROCESSS和这些进程不共享套接字监听器,有没有办法让用户A和用户B相互交谈。

什么是解决这个问题的好办法? 是否socket.io支持多核系统?

是socket.io仅适用于单核心的使用?

Answer 1:

你可以使用socket.io正常,但在后台一个redis的商店。 它还将支持socket.io多个实例,无需任何外部库。 它甚至还支持在房间多个实例。

链接到如何建立与Redis的socket.io: 使用带有socket.io倍数节点/进程



文章来源: Good way to use socket.io with cluster in multi-core server?