0
從我讀過的內容來看,似乎是芹菜工人停下來,它應該能夠在重新開始時從隊列中消耗。芹菜工人在被迫停車後不會重新啓動
爲了測試這個,我創建了3個虛擬機,每臺機器有2個芹菜工。我正在使用一個芹菜守護進程。一臺機器具有客戶端腳本,另一臺機器充當代理,儘管它們都運行rabbitmq。
當我啓動客戶端腳本時,我所有的工作人員都會收到任務(從日誌中可以看出)。爲了測試失敗後會發生什麼,我發出
service celeryd stop
到我的一臺機器上。然後一分鐘後,我發出
service celeryd start
到我停下來的機器一分鐘前。但是,在發出此命令後,我的客戶端腳本凍結並停頓,並且我上面的計算機上的工作人員再也不會收到任務。
對發生了什麼有什麼想法?我猜可能有一種可能性是,芹菜工作人員在關閉之前所做的最後一項任務是干擾?
僅供參考:我在我的客戶端腳本中收到結果後刪除了臨時隊列,但這並不認爲這會影響上述問題。