gpt4 book ai didi

python - Django Celery apply_async 不起作用

转载 作者:行者123 更新时间:2023-12-02 09:53:53 47 4
gpt4 key购买 nike

我们使用的是 django 1.10、Celery 4.1.0

我正在尝试使用 apply_async。这是任务:

from celery import Celery
app = Celery('my_app', broker='redis://127.0.0.1:6379/2')


@app.task
def add(x, y):
print(str(x+y))
raise status.HTTP_500_INTERNAL_SERVER_ERROR

当使用“delay”调用它时,它会运行“add”函数但不会重试:

add.delay(4, 4)

我尝试使用“apply_async”、“retry”和“retry_policy”运行任务,但它似乎甚至没有运行该任务:

add.apply_async((4, 4),
retry=True,
retry_policy={
'max_retries': 3,
'interval_start': 0,
'interval_step': 0.2,
'interval_max': 0.2,
}
)

我错过了什么吗?

最佳答案

检查您是否错过了 proj/proj/__init__.py 上的配置,如 Celery Docs 中所述。

该文件必须具有:

from __future__ import absolute_import, unicode_literals

# This will make sure the app is always imported when
# Django starts so that shared_task will use this app.
from .celery import app as celery_app

__all__ = ('celery_app',)

关于python - Django Celery apply_async 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50651736/

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