gpt4 book ai didi

websocket - Tornado - 使连接在服务器弹跳中幸存下来

转载 作者:可可西里 更新时间:2023-11-01 11:39:16 25 4
gpt4 key购买 nike

我将 tornado.websocket.WebSocketHandler 的实例存储在字典中,因此当特定用户收到消息时,我可以将消息路由到适当的监听器。

这意味着当服务器反弹时,我们会丢失监听器详细信息,客户端将不得不创建一个新的 WebSocket 实例。

我想实现将监听器详细信息存储在持久存储中的方法,可能在 redis 中,但我不确定最佳方法。

我可以 pickle WebSocketHandler 实例并写入 redis,然后在发送给特定用户的消息需要路由到他们的客户端时读取并取消 pickled,但这感觉有点 hacky。有没有更简单的解决方案?

最佳答案

您无法有效地 pickle WebSocketHandler,因为连接的套接字无法以这种方式传输。您也许可以使用 multiprocessing.Queue 来做一些事情,而不是简单地酸洗,但这充其量是棘手和棘手的。客户端必须能够在任何情况下创建新的 WebSocket 连接以从网络中断中恢复;当服务器重新启动时,简单地执行相同的操作是正常的。

关于websocket - Tornado - 使连接在服务器弹跳中幸存下来,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26028433/

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