我有一个简单的龙卷风/ redis聊天,它有一个带有监听器的池(简单的dict,用户名为密钥,websocket对象为值),因此一个(比如说主持人)可以将用户的websocket对象修改为例如禁止某人。但是当我启动多个IOLoop实例时,我突然意识到这个池不再是全局的了。所以问题是,是否有可能在所有IOLoops之间使用共享变量?在尝试IOLoop之前,我试图让这个池成为Application的一部分:
app = Application()
app.listeners = {}
http_server = HTTPServer(app)
http_server.bind(8181)
http_server.start(0)
但它不起作用。
答案 0 :(得分:0)
要在不同的Python进程之间共享数据,数据必须存储在某些中央进程(如数据库服务器)中。我建议您将共享数据放在Redis中,因为您已经在使用它了。