簡體   English   中英

Django Celery apply_async不起作用

[英]Django Celery apply_async doesn't work

我們正在使用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

當使用“延遲”調用它時,它將運行“添加”功能,但不會重試:

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,
                        } 
                )

我想念什么嗎?

檢查您是否錯過了Celery Docs中所述的proj / proj / __ init__.py上的配置

該文件必須具有:

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',)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM