为了账号安全,请及时绑定邮箱和手机立即绑定

Django 中带有 Redis 代理的 Celery:任务成功执行

Django 中带有 Redis 代理的 Celery:任务成功执行

森林海 2021-10-12 17:59:45
我们的 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 屏幕截图(所有任务都应该已完成,因此我们期望零键和零连接):
查看完整描述

1 回答

?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

解决了我自己的问题:如果将CELERY_IGNORE_RESULTconfig 变量设置为True(我能够这样做,因为我不使用任务的任何返回值),则键和连接将重新得到控制。



查看完整回答
反对 回复 2021-10-12
  • 1 回答
  • 0 关注
  • 170 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号