Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 19, 2011 11:15:03

nuklea
От:
Зарегистрирован: 2009-12-05
Сообщения: 51
Репутация: +  0  -
Профиль   Отправить e-mail  

Задачи не выполняются: django, celery, rabbitmq

settings.py

import djcelery; djcelery.setup_loader()

CELERY_IMPORTS = ('tasks',)
CELERY_RESULT_BACKEND = "database"
CELERY_SEND_EVENTS = True
CELERY_QUEUES = {"default": {"exchange": "default",
"binding_key": "default"}}
CELERY_DEFAULT_QUEUE = "default"

BROKER_HOST = "localhost"
BROKER_PORT = 5672
BROKER_USER = "someuser"
BROKER_PASSWORD = "123456"
BROKER_VHOST = "default"
Вывод некоторых команд:

$ ./manage.py celeryctl apply tasks.make_poster 21
25032cb9-af15-4e02-820e-f39bbd3dd6b1

$ ./manage.py celeryctl status
Error: No nodes replied within time constraint.

$ sudo rabbitmqctl list_queues -p default
Listing queues ...
celeryev.43742e58-35a6-4628-8062-e4e284bb77c9 0
default 3
celery 22
...done.
Вот так запускаю воркер:
$ ./manage.py celeryd -l DEBUG -B -E -n localhost 
[2011-06-19 16:08:31,963: WARNING/MainProcess]

-------------- celery@localhost v2.2.7
---- **** -----
--- * *** * -- [Configuration]
-- * - **** --- . broker: amqplib://someuser@localhost:5672/default
- ** ---------- . loader: djcelery.loaders.DjangoLoader
- ** ---------- . logfile: [stderr]@DEBUG
- ** ---------- . concurrency: 4
- ** ---------- . events: ON
- *** --- * --- . beat: ON
-- ******* ----
--- ***** ----- [Queues]
-------------- . default: exchange:default (direct) binding:default


[Tasks]
. celery.backend_cleanup
. celery.ping
. tasks.make_poster

[2011-06-19 16:08:31,963: DEBUG/MainProcess] Instantiating thread components...
[2011-06-19 16:08:31,969: DEBUG/MainProcess] Starting thread TaskPool...
[2011-06-19 16:08:31,971: DEBUG/MainProcess] created semlock with handle 140071986487296
[2011-06-19 16:08:31,972: DEBUG/MainProcess] created semlock with handle 140071986483200
[2011-06-19 16:08:31,972: DEBUG/MainProcess] created semlock with handle 140071986479104
[2011-06-19 16:08:31,972: DEBUG/MainProcess] created semlock with handle 140071986475008
[2011-06-19 16:08:31,975: INFO/PoolWorker-2] child process calling self.run()
[2011-06-19 16:08:31,976: INFO/PoolWorker-3] child process calling self.run()
[2011-06-19 16:08:31,978: INFO/PoolWorker-4] child process calling self.run()
[2011-06-19 16:08:31,979: DEBUG/MainProcess] worker handler starting
[2011-06-19 16:08:31,979: INFO/PoolWorker-5] child process calling self.run()
[2011-06-19 16:08:31,980: DEBUG/MainProcess] result handler startin
celeryev показывает отсутствие воркеров. Господа, спасите, уже второй день так сижу =(



Офлайн

#2 Июнь 19, 2011 13:58:48

nuklea
От:
Зарегистрирован: 2009-12-05
Сообщения: 51
Репутация: +  0  -
Профиль   Отправить e-mail  

Задачи не выполняются: django, celery, rabbitmq

Решил проблему. В файле tasks.py у меня была вот такая строчка:

from gevent import monkey; monkey.patch_all()
После ее комментирования все заработало.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version