1

非常に単純なDjangoCeleryプロジェクトを立ち上げて実行するためのプロジェクトを開始しました。私は主にそれがどのように機能するかを見ようとしているので、私の設定は次のようになります:

BROKER_TRANSPORT = "django"
CELERY_ALWAYS_EAGER = True
CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler"

apply_async()Django管理サイトでタスクをスケジュールして投稿することをテストしましたが、どちらもうまく機能します。

私が現在見ている唯一の問題は、タスクをテストするために2つの別々のプロセスを実行する必要があることdjango runserverですdjango celerybeat。定期的なタスクを変更するときは、celerybeatプロセスを再起動してリロードする必要があります。他のプロセスを開始することを忘れないように、celerybeat統合されたプロセスを実行する方法はありますか?runserver

4

1 に答える 1

2

私自身は使ったことがありませんが、django-supervisorプロジェクトをチェックする必要があるようです。私の理解では、Webサーバーで実行されている、同時に実行されている任意の数のプロセスのコンテンツを自動的に再ロードするように構成できます。

または、celery2.5の--autoreload機能を使用することもできます。詳細については、リリースノートをご覧ください。

于 2012-06-01T13:38:19.573 に答える