我的部署擴展到多個 pod。要求是每當應用程序啟動時,我都希望執行一段代碼。但我只想要一個 pod 來執行這段代碼。如何實現?現在我有辦法 - 我在我的數據庫中設置了一個標志并讓我的 pod 讀取該標志,它首先讀取并鎖定該標志將必須處理該任務。我的方法有什么缺點嗎?有沒有更好的方法來做到這一點?
1 回答

肥皂起泡泡
TA貢獻1829條經驗 獲得超6個贊
我相信這是正確的做法。所有 pod 都需要有一種方法來了解是否其他人正在處理任務,并且通過 DB 進行處理是最佳選擇。唯一的缺點是如果 pod 拾取它時無法更新標志狀態怎么辦。在那種情況下會發生什么?
我能想到的另一個選擇可能是將消息發布到消息隊列(在您的 pod、云平臺之外維護的隊列?)。這個想法是每當一個 pod 活躍時,他們將檢查隊列并處理它。它類似于您擁有的數據庫方法。
- 1 回答
- 0 關注
- 80 瀏覽
添加回答
舉報
0/150
提交
取消