2017-07-18 61 views
1

我有兩個Django應用程序正在運行appone服務器,apptwo 他們兩個芹菜工人開始用命令:運行2名芹菜工人在一臺服務器有兩個Django應用

celery worker -A appone -B --loglevel=INFO 


celery worker -A apptwo -B --loglevel=INFO 

兩個點同樣BROKER_URL =「的Redis://本地主機:6379」

Redis的是建立與DB 0和1

我可以看到在這兩個應用程序配置在這兩個應用程序的日誌中的任務,這是導致警告和錯誤。

我們可以在django設置中進行配置,使芹菜完全不會干擾彼此的任務嗎?

回答

1

您可以route tasks到不同的隊列。用兩個不同的-Q myqueueX啓動芹菜,然後在兩個Django項目中使用不同的CELERY_DEFAULT_QUEUE

根據您的芹菜配置,你的Django設置應該是這個樣子:

CELERY_DEFAULT_QUEUE = 'myqueue1' 

您也可以有更多的細粒度控制:

@celery.task(queue="myqueue3") 
def some_task(...): 
    pass 

更多選擇在這裏:

How to keep multiple independent celery queues?

相關問題