2017-03-02 49 views
4

有一種方法可以啓動芹菜工作者並擊敗一個命令嗎?我想將芹菜添加到我的Fabric自動化部署過程中。芹菜工人和一個命令擊敗負載

我目前正在運行:其次是

celery -A prj beat -l info -S django 

然而

celery -A prj worker -B 

,第一命令啓動工人,不允許下一個命令(在開始拍)要,因爲運行顯示工作人員啓動消息。

有沒有辦法避免啓動消息出現?或者在一個命令中執行這兩個操作?也許有一種方法可以從我的Django配置中啓動它們?

謝謝!

回答

4

芹菜允許你運行工人,並在同一過程中擊敗(主要用於開發目的)。檢查出celery worker幫助:

> celery worker -h 

... 

Embedded Beat Options: 
    -B, --beat   Also run the celery beat periodic task scheduler. Please note that there must only be 
         one instance of this service. .. note:: -B is meant to be used for development 
         purposes. For production environment, you need to start celery beat separately. 
    -s SCHEDULE_FILENAME, --schedule-filename SCHEDULE_FILENAME, --schedule SCHEDULE_FILENAME 
         Path to the schedule database if running with the -B option. Defaults to celerybeat- 
         schedule. The extension ".db" may be appended to the filename. Apply optimization 
         profile. Supported: default, fair 
    --scheduler SCHEDULER 
         Scheduler class to use. Default is celery.beat.PersistentScheduler 

所以聯合命令,包括您使用django調度的,會是以下幾點:

celery -A prj worker --beat --scheduler django --loglevel=info