私は Django を使用しており、開発環境は Windows です。昨日、RabbitMQ を使用してラップトップでセロリを実行するために丸一日を費やしました。私はすべてのチュートリアルを実行しましたが、ウィンドウに関する特別な言及はありませんでした。Celery の公式ドキュメント: http://celery.readthedocs.org/en/latest/django/first-steps-with-django.htmlに従いました。
最終的に、Ubuntuで実行しようとしましたが、すべてうまくいきました。celery または manage.py celeryd を使用してワーカーを実行すると、ワーカーがスタックします。
python manage.py セロリ ワーカー -E -l デバッグ
[2014-06-18 07:23:48,516: DEBUG/MainProcess] | Worker: Preparing bootsteps.
[2014-06-18 07:23:48,525: DEBUG/MainProcess] | Worker: Building graph...
[2014-06-18 07:23:48,532: DEBUG/MainProcess] | Worker: New boot order: {StateDB, Timer, Hub, Queues (intra), Pool, Autoscaler, Beat, Autoreloader, Consumer}
[2014-06-18 07:23:48,549: DEBUG/MainProcess] | Consumer: Preparing bootsteps.
[2014-06-18 07:23:48,553: DEBUG/MainProcess] | Consumer: Building graph...
[2014-06-18 07:23:48,569: DEBUG/MainProcess] | Consumer: New boot order: {Connection, Events, Mingle, Gossip, Tasks, Control, Agent, Heart, event loop}
[2014-06-18 07:23:48,582: DEBUG/MainProcess] | Worker: Starting Pool
cygwin から celeryd を実行しようとしましたが、うまくいきませんでした。私の RabbitMQ 構成は問題なく、django が RabbitMQ にメッセージを送信できることがわかります。
それはWindowsに関連するものであり、構成の欠陥ではないと確信しています。これが私の構成です:
# CELERY
djcelery.setup_loader()
BROKER_HOST = "127.0.0.1"
BROKER_PORT = 5672
BROKER_USER = "my_user"
BROKER_PASSWORD = "my_pass"
BROKER_VHOST = "my_vhost"
また、127.0.0.1 の代わりに「localhost」を使用しました。
Windowsのセロリについて何か知っている人はいますか? 他の提案はありますか?