flask + celery
原因
此报错是因为celery任务超过了 hard_time_limit 时间被celery主进程kill掉了, 应该还能找到此报错: MainProcess Hard time limit (300s) exceeded for
(此处设置的hard_time_limit为300s)
解决
把soft_time_limit设置少于hard_time_limit, 并进行异常捕获处理即可
存在问题
- 查到公司原代码hard_time_limit为300s soft_time_limit为150s, 但日志仍然有
MainProcess Hard time limit
, 为什么在150s时没有抛异常, 进程可以执行300s最后被kill?? - celery设置了soft_time_limit 还需要设置hard_time_limit么?
- 什么情况会导致任务超过soft_time_limit 达到har_time_limit限制???