我在Heroku上運行芹菜工作人員,其中一項任務達到超時限制。當我手動重試它一切正常,所以這可能是一個連接問題。我使用RabbitMQ作爲代理,Celery配置爲對任務進行遲到確認(CELERY_ACKS_LATE = True)。我預計任務將被返回到RabbitMQ隊列並由另一名工作人員再次處理,但這並未發生。您是否需要配置任何其他任務以在工作人員超時時返回到RabbitMQ隊列?芹菜在超時後沒有將任務放回RabbitMQ隊列
下面是日誌:
Traceback (most recent call last):
File "/app/.heroku/python/lib/python3.4/site-packages/billiard/pool.py", line 639, in on_hard_timeout
raise TimeLimitExceeded(job._timeout)
billiard.exceptions.TimeLimitExceeded: TimeLimitExceeded(60,)
[2015-09-02 06:22:14,504: ERROR/MainProcess] Hard time limit (60s) exceeded for simulator.tasks.run_simulations[4e269d24-87a5-4038-b5b5-bc4252c17cbb]
[2015-09-02 06:22:18,877: INFO/MainProcess] missed heartbeat from [email protected]
[2015-09-02 06:22:18,922: ERROR/MainProcess] Process 'Worker-1' pid:9 exited with 'signal 9 (SIGKILL)'