gpt4 book ai didi

python - Celery 与 Django 中的 Redis 代理 : tasks successfully execute, 但仍然存在太多持久的 Redis key 和连接

转载 作者:可可西里 更新时间:2023-11-01 11:23:57 26 4
gpt4 key购买 nike

我们的 Python 服务器 (Django 1.11.17) 使用 Celery 4.2.1 和 Redis 作为代理(我们使用的 pip redis 包是 3.0.1)。 Django 应用部署到 Heroku,Celery 代理使用 Heroku 的 Redis Cloud 插件设置。

我们拥有的 Celery 任务绝对应该在一分钟内完成(中位完成时间约为 100 毫秒),但我们看到 Redis 键和连接的持续时间比这长得多(最多 24 小时) .否则,任务正在正确执行。

可能发生了什么导致我们的 Redis 代理中出现这些持久键和连接?我们如何在 Celery 任务结束时清除它们?

这是发生这种情况的 Redis Labs 屏幕截图(所有任务都应该已完成,因此我们期望零键和零连接):

Redis Labs screenshot

最佳答案

解决了我自己的问题:如果 CELERY_IGNORE_RESULT 配置变量设置为 True(我可以这样做,因为我没有使用我的任何返回值任务),然后 key 和连接就会重新受到控制。

来源:Celery project documentation

关于python - Celery 与 Django 中的 Redis 代理 : tasks successfully execute, 但仍然存在太多持久的 Redis key 和连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54227369/

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