simple run results ocean beat python django celery

python - run - Django Celery-No se puede conectar a amqp://[email protected]: 5672//



django-celery-results (4)

Estoy tratando de configurar Django-Celery. Estoy pasando por el tutorial

http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html

cuando ejecuto $ python manage.py celery worker --loglevel = info

yo obtengo

[Tasks] /Users/msmith/Documents/dj/venv/lib/python2.7/site-packages/djcelery/loaders.py:133: UserWarning: Using settings.DEBUG leads to a memory leak, never use this setting in production environments! warnings.warn(''Using settings.DEBUG leads to a memory leak, never '' [2013-08-08 11:15:25,368: WARNING/MainProcess] /Users/msmith/Documents/dj/venv/lib/python2.7/site-packages/djcelery/loaders.py:133: UserWarning: Using settings.DEBUG leads to a memory leak, never use this setting in production environments! warnings.warn(''Using settings.DEBUG leads to a memory leak, never '' [2013-08-08 11:15:25,369: WARNING/MainProcess] celery@sfo-mpmgr ready. [2013-08-08 11:15:25,382: ERROR/MainProcess] consumer: Cannot connect to amqp://[email protected]:5672/celeryvhost: [Errno 61] Connection refused. Trying again in 2.00 seconds...

¿Alguien ha encontrado este problema antes?

settings.py

# Django settings for summertime project. import djcelery djcelery.setup_loader() BROKER_URL = ''amqp://guest:guest@localhost:5672/'' ... INSTALLED_APPS = { ... ''djcelery'', ''celerytest'' }

wsgi.py

import djcelery djcelery.setup_loader()


El problema es que está intentando conectarse a una instancia local de RabbitMQ. Mira esta línea en tu settings.py

BROKER_URL = ''amqp: // guest: guest @ localhost: 5672 /''

Si está trabajando actualmente en desarrollo, podría evitar configurar Rabbit y todo el desorden que lo rodea, y simplemente usar una versión de desarrollo de Message Queue con la base de datos Django.

Haga esto reemplazando su configuración anterior con

BROKER_URL = ''django: //'' y agrega esta aplicación:

INSTALLED_APPS + = (''kombu.transport.django'',)

Finalmente, lanza al trabajador con

./manage.py celery worker --loglevel = info

Fuente: http://docs.celeryproject.org/en/latest/getting-started/brokers/django.html


Recibí este error porque no se inició rabbitmq . Si instaló rabbitmq través de brew, puede iniciarlo usando brew services start rabbitmq


Si está trabajando en un entorno de producción,

Primero debes instalar y configurar un servidor rabbitmq. Puede consultar el sitio web de rabbitmq para los pasos de instalación.

En la configuración tienes que escribir estas líneas:

CELERY_RESULT_BACKEND=''djcelery.backends.database:DatabaseBackend'', BROKER_URL = ''amqp://guest:guest@localhost:5672//''

Después de toda la configuración del servidor rabitmq, debe ejecutar este comando dos,

export C_FORCE_ROOT=''true'' celery -A transcoder(name of app) worker --loglevel=info


Tuve el mismo problema y la razón fue que olvidé agregar elementos de apio (CELERY_RESULT_BACKEND, BROKER_URL, ...)
Después de agregar estos, problema resuelto!