在multi中使用带有群集的socket.io的好方法
我创建了一个nodejs应用程序,它可以在单个内核中正常工作。 此应用程序使用socket.io进行轻快通信。
现在,我想通过使用nodejs中的cluster
模块在多核系统上运行来纵向扩展我的应用程序。
我的应用程序中的所有内容都将数据存储在Redis中,因此,处理某些基本数据和会话时不存在问题。
但是,当我使用集群产生多个工作进程时,似乎每个工作者都有自己的套接字处理。
例如,我们假设有一个叫做“客人”房间的聊天室。
用户A和用户B连接到房间,并分配给不同的工作进程。
由于它们处于不同的进程中,并且这些进程不共享套接字侦听器,因此用户A和用户B无法相互通信。
什么是解决这个问题的好方法? socket.io是否支持多核系统?
socket.io仅适用于单核使用?
您可以像平常一样使用socket.io,但在后台使用redis存储。 它也将支持socket.io上的多个实例,而无需任何外部库。 它甚至支持多个实例的房间。
链接到如何使用redis设置socket.io:在socket.io中使用Multiples节点/进程
链接地址: http://www.djcxy.com/p/10921.html上一篇: Good way to use socket.io with cluster in multi
下一篇: Command pattern to pass application's activity methods?