2015-11-26 38 views
1

我正在使用芹菜的FLASK應用程序。其中,我使用行app.run()運行該應用程序。如果我將其更改爲以下在FLASK應用程序中同時運行芹菜節拍和工作人員

if __name__ == '__main__': 

application = current_app._get_current_object() 

worker = worker.worker(app=application) 
beat = beat.beat(app=application) 

options = { 
    'broker': app.config['CELERY_BROKER_URL'], 
    'loglevel': 'INFO', 
    'traceback': True, 
} 

worker.run(**options) 
beat.run(**options) 
app.run() 

負責運行應用程序和工作人員,但芹菜拍不運行,直到我關閉工作。有什麼辦法可以同時運行嗎?可能以某種方式將-B標誌添加到選項設置中?我很感謝在這件事上的任何幫助。

回答

2

如果添加「擊敗」 =真到你的選擇,當你調用worker.run(**選項),它會給節拍任務的工人:

if __name__ == '__main__': 

application = current_app._get_current_object() 

worker = worker.worker(app=application) 

options = { 
    'broker': app.config['CELERY_BROKER_URL'], 
    'loglevel': 'INFO', 
    'traceback': True, 
    'beat': True, 
} 

worker.run(**options) 
app.run() 

應該停止跳動當工人停下來時。

相關問題