1

我剛剛開始一個項目,試圖獲得一個非常簡單的Django Celery項目。由於我主要只是想看看它是如何工作的,這裏是我的設置是這樣的:有apply_async()在Django內部集成芹菜?

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

我測試發帖任務,並通過在Django管理站點安排他們的工作都很大。

我目前看到的唯一問題是我需要運行兩個獨立的進程來測試我的任務,django runserverdjango celerybeat。當我更改週期性任務時,我需要重新啓動celerybeat進程以使其重新加載。有什麼方法可以運行與runserver集成的celerybeat進程,以避免必須記住啓動其他進程?

回答

2

我自己並沒有使用它,但似乎你應該看看django-supervisor項目。我的理解是,它可以配置爲自動重新加載內容,以便與您的Web服務器一起運行的任意數量的併發運行進程。

或者,您可以使用芹菜2.5's - 自動載入功能。在the release notes的更多細節。