【问题标题】:Managing Celery Task Results管理 Celery 任务结果
【发布时间】:2015-05-16 11:00:33
【问题描述】:

我对 Celery 很陌生,我以为我在某个地方读到过任务结果只会在有限的时间内保留。然而,我的后端(redis)在通过它运行了很多任务后变得相当臃肿。

有没有办法在任务结果上设置 TTL,还是我需要手动清除(以及如何)?

【问题讨论】:

    标签: python redis celery task-queue


    【解决方案1】:

    根据 celery 文档,您可以使用 CELERY_IGNORE_RESULT 完全忽略所有结果。

    您还可以使用CELERY_RESULT_EXPIRES(默认为 1 天)在一定时间后使结果过期。在注释中它说这应该只适用于 redis 后端,而其他一些后端需要celery beat 才能运行。

    还有CELERY_MAX_CACHED_RESULTS 设置默认缓存多达 5,000 个结果。

    【讨论】:

    猜你喜欢
    • 2022-11-25
    • 2021-02-25
    • 2019-07-20
    • 2023-03-07
    • 1970-01-01
    • 2016-12-25
    • 1970-01-01
    • 2017-04-10
    • 2018-06-03
    相关资源
    最近更新 更多