Django频道“群组订阅中N个频道的Y错误超过N个频道”

我正在使用Django应用程序进行负载测试,该应用程序使用Django通道和redis通道层(djangographene-djangochannelsgraphene-subscriptions,{ {1}})。作为ASGI服务器,我现在正在使用channels-redis。我使用daphne作为代理。后端通过GraphQL订阅发布消息的周期取决于后端通过MQTT接收的消息的周期。我正在增加外部数据提供者将消息发布到MQTT代理的周期,这意味着后端必须处理这些消息并通过GraphQL订阅发布消息的周期。我遇到以下错误:

nginx

该问题似乎是由channels_redis引起的。我可以扩展基础架构来解决此问题吗?

nmwangyu 回答:Django频道“群组订阅中N个频道的Y错误超过N个频道”

默认容量为100条消息,默认消息到期时间为 60秒因此,如果在这些容量/时间内未读取该频道 约束,它将填满。

可能永远无法正确连接的原因是通道可能被填满 关闭。在这种情况下,该频道将保留在组中并最终填满。

减轻这种情况的一种方法是拥有足够的容量和较短的超时时间。您 可以通过以下方式更改Django设置中的配置:

*
本文链接:https://www.f2er.com/2666209.html

大家都在问