最近展開した昆布/セロリのセットアップです。タスクは正常に実行されますが、run_every 属性を尊重するのではなく、ほぼ連続して実行されているように見えます。おそらくもっと奇妙なことに、この動作は本番環境でのみ発生し、ローカルでは正常に機能します。
私tasks.py
はこのように見えます:
from celery.task import PeriodicTask
from datetime import timedelta, datetime
class FirstTask(PeriodicTask):
run_every = timedelta(seconds = 30)
# Do Stuff
マイsettings.py
インクルード
BROKER_URL = "django://"
import djcelery
djcelery.setup_loader()
プラス'djcelery'
と'kombu.transport.django'
インINSTALLED_APPS
。
そして本番環境ではpython manage.py celeryd -v 2 -B -s celery -E -l INFO
、タスクの実行を開始するために実行します。他に何か問題が解決する場合は、Chase Seibert のチュートリアルに従っていました。