2013-04-19 5 views
5

Что я делаю неправильно?Сельдерей не работает на моем Heroku

Я недавно нашел удивительный шаблон django под названием django-skel. Я начал с ним проект, потому что он очень легко использовал героку с django. Это было здорово, пока я не попытался заставить сельдерей работать. Независимо от того, что я пытался, я не мог выполнить свои задачи. Поэтому я начал новое приложение для голых костей, чтобы посмотреть, смогу ли я заставить его работать без каких-либо других сумасшедших препятствий.

Это мой bare-bones app. У меня это работает на герою. Администратор Django работает, мои базы данных синхронизированы и перенесены. Я использую CloudAMQP Little Lemur для своего RabbitMQ. Я вижу запросы, стоящие в очереди в интерфейсе RabbitMQ, ничего не происходит. Как я очередь задач вручную запустить в оболочке:

from herokutest.apps.otgcelery.tasks import add 
result = add.delay(2,2) 

Я убеждаюсь, что у меня есть все 3 динамометрические стенды не работают, и до сих пор ничего.

Также у меня есть работающий локально.

Уверен, что есть много вопросов, и я готов их отдать. Просто спросите.

+0

Есть ли у вас планировщик планировщика? (Если вы обрабатываете небольшое количество задач, вам не нужен рабочий динамик.) – rdegges

+0

Также: можете ли вы запустить следующее: 'heroku ps: restart; heroku logs --tail --source app' и искать ошибки при запуске вашего работника? – rdegges

+0

Я запускаю планировщик dyno Я пнул всех трех, потому что только один не работал. Через несколько секунд я заберу журналы для вас. Благодарю. – Chris

ответ

2

Благодарим вас за помощь. Были пара вещей, которые я в конечном итоге делал неправильно. Во-первых, я неправильно импортировал задачу. Все, что мне нужно было сделать:

from apps.otgcelery.tasks import add 
result = add.delay(2,2) 

Сельдерей очень разборчив с тем, как вы импортируете свои задачи. Вторая проблема заключается в том, что CloudAMQP Free addon не работает из коробки с django-skel. Они ограничивают ваше количество подключений до трех, и как каждый поток нажимает на него, эти соединения невероятно быстрые, и ваши задачи просто начинают не соединяться. Поэтому я исправил это несколькими способами. Я попробовал другой BigWigs RabbitMQ, и он отлично поработал. Однако, поскольку они все еще были в Бета, я решил попробовать Редис. Это также отлично поработало, и мои задачи стреляют так быстро, как я могу их назвать.

Еще раз спасибо всем за вашу помощь.

Смежные вопросы