gpt4 book ai didi

node.js - 获取总数。 Socket.io + 多进程/集群中 Room 中的连接用户

转载 作者:IT王子 更新时间:2023-10-29 06:07:41 27 4
gpt4 key购买 nike

我不想在 socket.io 中获取任何已连接的用户,并且我有多个 socket.io 服务器

例如。当 user1 连接到 server1 并加入房间 room1

下面的语句返回给连接的用户列表

然后

io.nsps['/'].adapter.rooms["room1"]

io.sockets.adapter.rooms["room1"]

而且我还尝试了 SO 和谷歌上可用的许多其他解决方案。

但是当我在 server2 中使用上述语句时,它不会返回任何内容。

如何在特定房间的所有服务器中获取没有连接的用户?

我正在使用 socket.io-redis 模块在多个进程之间进行通信。

最佳答案

如果你想共享 session /房间等,你可能需要使用 redis。

这里有使用多个 Node 的文档(据我所知,这是您所拥有的)以及使用 redis 在一个 Node 和其他 Node 之间传递事件的文档。 http://socket.io/docs/using-multiple-nodes/#passing-events-between-nodes

是的,要检查一个房间中的 session ,以下是正确的 io.nsps['/'].adapter.rooms["room1"]

哎呀,现在才读到您声明已经在使用 socket.io-redis。如果配置正确,它应该可以工作,至少对我来说是这样。

关于node.js - 获取总数。 Socket.io + 多进程/集群中 Room 中的连接用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32647289/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com