Celery守护进程接受任务但它永远不会被执行

时间:2014-03-09 06:10:17

标签: django heroku celery

我在woku dyno上运行了一个芹菜实例。我用django和djcelery使用它,我使用以下命令启动它:

python manage.py celery worker -B -E --loglevel=info --autoscale=50,8 --without-gossip

我在队列中添加了一个任务,但它从未被执行过。日志显示:

Scaling down -7 processes. (This is a while before the following)
Received task: myapp.tasks.my_task[75f095cb-9652-4cdb-87d4-dc31cecaadff] 
Scaling up 1 processes. 

但就是这样,在此之后,这项工作根本没有完成。之后我也解雇了其他任务,并且所有任务都成功执行了。几个小时后重复了同样的问题。

我有几个问题: 1.“已接收任务...”日志行表示芹菜守护程序从队列中取出作业,对吗?为什么工作进程变得不活跃? 2.由于我的自动缩放设置为50,8,不应该总是有8名工人吗?为什么所有工人都缩减了? 3.有没有办法知道任务被卡住了?如果被解雇的任务是关键任务,那么对于这种情况,建议的故障恢复是什么。

我的芹菜版本是3.1.9,django-celery版本3.1.9,redis版本2.6.16

django设置中的设置:

CELERY_SEND_TASK_ERROR_EMAILS = True
import djcelery
djcelery.setup_loader()
BROKER_URL = 'redis://:password@host:port/0'
BROKER_BACKEND = 'django'
CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler'

0 个答案:

没有答案