跨多个进程处理websocket客户端

时间:2013-01-14 17:09:52

标签: python websocket tornado

我使用python的龙卷风框架进行了很好的websocket实现,用作后端,在单个龙卷风进程中运行良好。虽然我在尝试,但我无法在多个进程之间保留websocket客户端连接。

我目前正在向模块的字典对象添加客户端实例,而这些对象无法从其他进程轻松访问。

有人应该如何在python中的多个进程之间保留一个类实例(更具体地说,龙卷风)?

1 个答案:

答案 0 :(得分:0)

您不应尝试在进程之间共享对象。只是不要这样做。

如果您的用例是一个进程因任何原因而停止,请让客户端通过重新连接来处理闭包。连接将被路由到另一个运行Tornado进程。

如果您的用例是与其他Tornado进程共享消息,请考虑您的网络拓扑:您可以将消息发送到新的父节点,该节点将消息分发回所有Tornado实例(包括原始的Tornado进程) )。

ZMQ库和文档是很棒的资源,会给你一些想法。