Django Celery超过时间限制?

问题描述:

我一直收到此错误...

I keep receiving this error...

[2012-06-14 11:54:50,072: ERROR/MainProcess] Hard time limit (300s) exceeded for movies.tasks.encode_media[14cad954-26e2-4511-94ec-b17b9a4149bb]

[2012-06-14 11:54:50,111: ERROR/MainProcess] Task movies.tasks.encode_media[bc173429-77ae-4c96-b987-75337f915ec5] raised exception: TimeLimitExceeded(300,)

Traceback (most recent call last): File "/srv/virtualenvs/filmlib/local/lib/python2.7/site-packages/celery/concurrency/processes/pool.py", line 370, in _on_hard_timeout raise TimeLimitExceeded(hard_timeout)
TimeLimitExceeded: 300

即使我有 CELERYD_TASK_TIME_LIMIT = 86400 CELERYD_TASK_SOFT_TIME_LIMIT = 86400 在我的settings.py项目中。有谁知道为什么它仍然默认为300s?

even though I have CELERYD_TASK_TIME_LIMIT = 86400 and CELERYD_TASK_SOFT_TIME_LIMIT = 86400 in my settings.py for the project. Does anyone know why would it still be defaulting to 300s?

谢谢

修改您的celeryd(/etc/init.d/celeryd)设置。下面的示例将时间限制设置为2小时。

Modify your celeryd (/etc/init.d/celeryd) settings. Sample below sets the time limit to 2 hours.

CELERYD_OPTS="--time-limit=7200 -E --loglevel=DEBUG"