[英]Default celery countdown
有没有办法在Django的settings.py
声明默认的倒数计时器,例如CELERYD_TASK_SOFT_TIME_LIMIT
? 如果不是像在基于类的定期任务中那样总是声明它,那将是有帮助的。
try:
ddd
except Exception as exc:
raise self.retry(exc=exc)
也有可能对所有任务都具有默认的retry=True
设置吗?
看来您可以执行以下操作:
app.config_from_object('django.conf:settings', namespace='CELERY')
在django.conf中
CELERY_SOFT_TIME_LIMIT = 120
CELERY_TIME_LIMIT = 240
这是celery django配置文档。
http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html
这是配置选项的列表。
http://docs.celeryproject.org/en/latest/userguide/configuration.html
我找不到全局任务重试设置,但可以发誓在某处看到它。 但是,您可以在每个任务级别设置重试次数,也可以通过硬性和软性时间限制。
@app.task(max_retries=10, time_limit=240, soft_time_limit=120)
def task(self, auth, message):
#do_stuff
这是您可以给芹菜装饰者选择的列表。 http://docs.celeryproject.org/en/latest/reference/celery.app.task.html#celery.app.task.Task.retry
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.