首页 > 解决方案 > Celery 和 RabbitMQ 没有启动

问题描述

我安装了 RabbitMQ、Celery、Flask 和 Python,但是当我尝试运行 celery worker 进行测试时。它不起作用,这些是在cmd中弹出的错误。

[2019-01-18 09:56:37,443: WARNING/MainProcess] consumer: Connection to broker lost. Trying to re-establish the connection...
Traceback (most recent call last):
  File "c:\users\ansonkho\anaconda3\lib\site-packages\celery\worker\consumer\consumer.py", line 317, in start
    blueprint.start(self)
  File "c:\users\ansonkho\anaconda3\lib\site-packages\celery\bootsteps.py", line 119, in start
    step.start(parent)
  File "c:\users\ansonkho\anaconda3\lib\site-packages\celery\worker\consumer\mingle.py", line 40, in start
    self.sync(c)
  File "c:\users\ansonkho\anaconda3\lib\site-packages\celery\worker\consumer\mingle.py", line 44, in sync
    replies = self.send_hello(c)
  File "c:\users\ansonkho\anaconda3\lib\site-packages\celery\worker\consumer\mingle.py", line 57, in send_hello
    replies = inspect.hello(c.hostname, our_revoked._data) or {}

下面是我的代码:

from celery import Celery

app = Celery('test_celery', broker='amqp://myuser:mypassword@localhost/myvhost',backend='rpc://')

标签: pythonrabbitmq

解决方案


[2019-01-18 09:56:37,443: WARNING/MainProcess] consumer: Connection to broker lost. Trying to re-establish the connection...

如错误中所述,没有运行代理。您需要Rabbitmq在建立连接之前开始。这就是为什么消费者Connection to broker lost在代理没有运行时抛出的原因。


推荐阅读