Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 如何跨所有redis线程查询Flask socket io rooms()?_Sockets_Flask_Redis_Flask Socketio - Fatal编程技术网

Sockets 如何跨所有redis线程查询Flask socket io rooms()?

Sockets 如何跨所有redis线程查询Flask socket io rooms()?,sockets,flask,redis,flask-socketio,Sockets,Flask,Redis,Flask Socketio,功能房间(socketid)(来自flask_socketio import rooms)提供了用户所属的所有房间的列表。但是,此函数执行的功能与我们为具有redis消息队列的多个进程实例化Flask服务器的功能不同(例如socketio=socketio(app,message_queue='redis://'))。也就是说,如果socketid位于不同的线程上,但连接到同一个redis队列,那么它可能会遗漏一些房间。是否有一种方法可以跨连接到同一Redis服务器的所有进程查询文件室(sock

功能
房间(socketid)
(来自flask_socketio import rooms)提供了用户所属的所有房间的列表。但是,此函数执行的功能与我们为具有redis消息队列的多个进程实例化Flask服务器的功能不同(例如
socketio=socketio(app,message_queue='redis://')
)。也就是说,如果socketid位于不同的线程上,但连接到同一个redis队列,那么它可能会遗漏一些房间。是否有一种方法可以跨连接到同一Redis服务器的所有进程查询
文件室(socketid)


举例来说,假设客户端A有socketid 123,客户端B有socketid 456,它们连接到两个不同的进程。我的问题是,连接到播放器B的进程无法确定什么是
rooms(123)

这目前不受支持,您只能为服务器已知的用户询问有关rooms的信息。