我想验证为芹菜任务设置时间限制。
我目前的配置如下:
CELERYD_TASK_SOFT_TIME_LIMIT = 30
CELERYD_TASK_TIME_LIMIT = 120
task_soft_time_limit = 29
task_time_limit = 44_LIMIT = 120
我正在重载超时参数,因为它似乎有name change coming而我只是想确保我至少达到一次超时。
但是当我在调试器中运行测试时,cellery app.conf
字典看起来像这样:
(Pdb) app.conf['task_time_limit'] == None
True
(Pdb) app.conf['task_soft_time_limit'] == None
True
(Pdb) app.conf['CELERYD_TASK_SOFT_TIME_LIMIT']
30
(Pdb) app.conf['CELERYD_TASK_TIME_LIMIT']
120
我已经编写了一个我认为会触发超时的测试但是没有出现任何错误:
@app.task(soft_time_limit=15)
def time_out_task():
import time
count = 0
#import pdb; pdb.set_trace()
while count < 1000:
time.sleep(1)
count += 1
print(count)
我的问题如下:
由于
答案 0 :(得分:0)
在Django设置中,CELERY_TASK_TIME_LIMIT对我有用
CELERY_TASK_TIME_LIMIT = 60