0

Django 環境を次のようにセットアップしました。

INSTALLED_APPS = (
....
    'djcelery',

)

BROKER_URL = "amqp://guest:guest@localhost:5672//"
CELERY_IMPORTS = ('bulksms.tasks', 'premiumsms.tasks', 'reports.tasks')
CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler"

import djcelery
djcelery.setup_loader()

Django管理者で、定期的なタスク(そこにあるすべてのタスクを確認できます)にタスクを追加して、テスト目的で毎分実行しますが、タスクは実行されません。

Running django then 
python manage.py celeryd -E --loglevel=DEBUG
python manage.py celerycam

Djceleryの下の管理サイトには、タスクを追加するオプションもありません(以前そこにあったかどうかはわかりません)。

4

1 に答える 1

2

Celery で定期的なタスクを実行する場合は、次のいずれかで celerybeat プロセスを実行する必要があります。

python manage.py celery beat

またはワーカープロセスで別のスレッドを使用する

python manage.py celery worker -E --loglevel=DEBUG -B

スケジューラの開始に関するドキュメントを参照してください http://celery.readthedocs.org/en/latest/userguide/periodic-tasks.html#starting-the-scheduler

于 2012-12-12T14:50:46.163 に答える