celery 忽略\u结果无法正常工作

mspsb9vt  于 2021-06-10  发布在  Redis
关注(0)|答案(0)|浏览(341)

我有一个e django应用程序,它定期调用一系列celery 任务,这些任务使用redis后端来管理一些东西,我不需要存储所有任务的结果。我的redis很快就会被称为 celery-meta-data-some-random-id-string ,包含任务本身及其结果。我想扔掉那些,所以我加了一句 'ignore_result' = True 对于那些我不在乎结果的任务。
我的任务定义为:

@shared_task(name='my.name', ignore_result = True)
def mytask(foo,bar):
    //do stuff
    return

我尝试将默认行为添加到django.settings中 CELERY_IGNORE_RESULT = True 来自 celery.py 在我的django应用程序中,我加载了如下设置

from django.conf import settings    
app = Celery('myapp')
app.config_from_object(settings, namespace='CELERY')

这是我的设置.py

CELERY_TASK_SERIALIZER = 'pickle'
CELERY_RESULT_SERIALIZER = 'pickle'
CELERY_BROKER_URL = 'redis://0.0.0.0/0'
CELERY_ACCEPT_CONTENT = ['pickle', ] #'json', 'msgpack', 'yaml'
CELERY_BACKEND = 'redis://0.0.0.0/0'
CELERY_RESULT_BACKEND = 'redis://0.0.0.0/0'
CELERY_TIMEZONE = 'Europe/Rome'

使用 Celery Flower 我可以检查任务配置 CELERY_IGNORE_RESULT 变量设置为 True 对于所有这些,所以我认为配置是正确的。
有什么我完全不知道的吗?我试图解决这个问题,定期清理redis,但最好不要存储结果。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题