Django芹菜工人没有收到任务

时间:2017-05-12 08:22:14

标签: python django rabbitmq celery django-celery

每当我在运行芹菜工人时,我都会收到警告

./manage.py celery worker -l info --concurrency=8

enter image description here

如果我被忽略这个警告,那么我的芹菜工人没有收到芹菜打败任务

googled之后我也改变了工人的名字,但是这次我没有收到警告但是芹菜工人仍然没有收到芹菜打败预定的任务

我检查了芹菜捶打日志,芹菜按时按时安排任务。

我还检查了芹菜花及其展示的两名工人,第一名工人正在接收任务而不执行任务,如何将所有任务发送给第二名工人?或者我如何禁用第一个海带工人,我错过了什么是djagno-celery设置?

我的django settings.py

RABBITMQ_USERNAME = "guest"
RABBITMQ_PASSWORD = "guest"
BROKER_URL = 'amqp://%s:%s@localhost:5672//' % (RABBITMQ_USERNAME, 
RABBITMQ_PASSWORD)
CELERY_DEFAULT_QUEUE = 'default'
CELERY_DEFAULT_EXCHANGE = 'default'
CELERY_DEFAULT_ROUTING_KEY = 'default'
CELERY_IGNORE_RESULT = True
CELERY_ACCEPT_CONTENT = ['json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
celery_enable_utc=True
import djcelery
djcelery.setup_loader()

1 个答案:

答案 0 :(得分:1)

您只启用了该工作人员。对于要执行的任务,您必须在your_task.delay ()函数的帮助下调用该任务。 例如,打开另一个终端,输入您的项目,然后运行python manage.py shell命令。进入项目Django的shell时,导入任务并运行命令your_task.delay () 在下面的链接中,有一个与rabbitmq经纪人的芹菜代码的例子,我建议你研究它: https://github.com/celery/celery/tree/master/examples/django