如何在socket.io中检查套接字是否存在(连接)有多个节点和socket.io-redis

Joh*_*yen 12 nginx redis node.js socket.io socket.io-redis

我使用socket.io与多个节点,socket.io-redis和nginx.我遵循本指南:http://socket.io/docs/using-multiple-nodes/

我正在尝试:在一个函数(服务器站点),我想通过socketid查询此套接字已连接或断开连接

我试过io.of('namespace').connected[socketid],它只适用于当前进程(这意味着它只能检查当前进程).

有人可以帮帮我吗?谢谢你提前.

Tri*_*eur 5

如何检查套接字是否存活(连接)与socketid我尝试了namespace.connected [socketid],它只适用于当前进程.

正如您所说,单独的进程意味着套接字仅在它们首次连接的进程上注册.您需要使用socket.io,Redis的所有节点连接在一起,你所能做的就是广播事件的每个客户端连接/断开时间,使每个节点的所有客户端的实时更新列表.