本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
REL04-BP03 持續工作
負載大幅快速變更時,系統可能會發生故障。例如,如果您的工作負載正在執行運作狀態檢查,監控數千部伺服器的運作狀態,應該每次傳送相同大小的承載 (目前狀態的完整快照)。無論伺服器全無故障或全部出現故障,運作狀態檢查系統都會持續執行工作,而無大幅快速變更。
例如,如果運作狀態檢查系統正在監控 100,000 部伺服器,則在一般輕型伺服器失敗率下,其負載為額定值。不過,如果重大事件讓一半的伺服器運作狀況不良,則運作狀態檢查系統會因嘗試更新通知系統並向其用戶端溝通狀態,而承受不住負載。因此,運作狀態檢查系統應每次都傳送目前狀態的完整快照。100,000 個伺服器運作狀態 (每個以一位元表示) 只是 12.5 KB 的承載。無論沒有伺服器發生故障,還是全部發生故障,運作狀態檢查系統都會持續執行工作,而大型的快速變更也不會對系統穩定性造成威脅。實際上,這是 Amazon Route 53 處理端點運作狀態檢查 (例如 IP 位址) 的方式,以判斷最終使用者如何路由到端點。
未建立此最佳實務時的曝險等級:低
實作指引
-
執行持續工作,以便當負載大量快速變更時,系統不會發生故障。
實作鬆耦合相依性。佇列系統、串流系統、工作流程和負載平衡器之間具有鬆散耦合的相依性。鬆耦合有助於將某個元件的行為與依賴它的其他元件隔離,進而提高彈性和敏捷性。
-
AWS re:Invent 2018:閉環和開場思維:如何控制大大小小的系統 ARC337(包括持續工作)
-
針對監控 100,000 部伺服器的運作狀態檢查系統範例,請設計工作負載,以便無論成功或失敗次數為何,承載大小都能保持不變。
-
資源
相關文件:
相關影片: