【问题标题】:Django channels Group send dies after sending a certain number of timesDjango频道组发送在发送一定次数后死亡
【发布时间】:2016-10-29 01:31:56
【问题描述】:

我有一些奇怪的行为,其中:

Group('chat-'+ name).send({'text': json.dumps(m)})

执行此发送 10 次或更多次后失败。常见的原因是什么?我没有在我的工作人员身上看到任何错误消息,除了它没有记录它正在发送任何信息。

通常我会看到:

2016-10-29 04:02:37,800 - DEBUG - ws_protocol - Sent WebSocket packet to client for !websocket.send.wTXtcZZQ

发送一定次数后,此消息将不会显示。我正在做一些更新行为,此发送将每 5 秒发生一次。

编辑:

此发送不会响应客户端发送。我通过这个组向客户端发送服务器数据。我认为这是问题所在?

编辑:

查看更多内容,我在 django-channels github 上找到了这条消息:

https://github.com/django/channels/issues/107

andrewgodwin: "...channels 有代码来检测消息何时收到 重新排队太多次(默认情况下现在是 10 次)然后它 杀死它以防止活锁..."

在接收上下文之外发送,例如:

Group('chat-'+ name).send({'text': json.dumps(m)})

反复排队?

【问题讨论】:

    标签: django django-channels


    【解决方案1】:

    我使用的是旧版本的 django 频道。升级到当前版本为我解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-20
      • 2019-03-02
      • 1970-01-01
      • 2015-06-02
      • 1970-01-01
      • 2021-11-17
      • 2020-07-16
      • 2017-09-02
      相关资源
      最近更新 更多