了解權衡和風險 - AWS 規範指引

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

了解權衡和風險

彈性架構應該使用少數經過良好測試、簡單且可靠的機制來回應故障。為了達到最高等級的彈性,工作負載應該會自動偵測並從盡可能多的故障模式中復原。這樣做需要在執行彈性分析方面進行大量投資。這意味著實現更高的彈性水平涉及進行權衡。但是,隨著您繼續進行權衡,您會達到相對於彈性目標的回報減少的點。以下是最典型的權衡:

  • 成本 — 冗餘組件,增強的可觀察性,額外的工具或增加的資源使用率將導致成本增加。

  • 系統複雜性 — 偵測並回應故障模式 (包括緩解解決方案),以及可能未使用受管理服務,可能會增加系統複雜性。

  • 工程工作 — 需要額外的開發人員時間來建置解決方案,以偵測並回應故障模式。

  • 營運負荷 — 監控和操作處理更多故障模式的系統可能會增加營運額外負荷,尤其是當您無法使用託管服務來緩解特定故障模式時。

  • 延遲和一致性 — 建立有利於可用性的分散式系統需要在一致性和延遲方面取捨,如 PACELC 定理所述。

根據正在進行的權衡來實現彈性目標的可能性,其中您達到了收益遞減的點

當您考慮使用者故事中已識別失敗模式的緩和措施時,請考慮您需要進行的權衡。與安全性一樣,彈性是一個優化問題。您必須決定是否要避免,減輕,轉移或接受由識別故障帶來的風險。您可以避免某些失敗模式,您可以接受的一些失敗模式,以及一些可以轉移的失敗模式。您可以選擇緩解您識別的許多失敗模式。要確定採取哪種方法,請提出兩個問題來執行評估:發生失敗的可能性是多少? 如果工作負載確實發生了什麼影響?

可能性是事件將發生多麼合理。例如,如果使用者故事具有在單一 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體上運作的元件,則該元件可能會在系統作業期間的某個時間點中斷,可能是因為修補程序或作業系統錯誤所致。或者,由 Amazon 關聯式資料庫服務 (Amazon RDS) 管理的資料庫,該資料庫可同步其主要和次要執行個體之間的資料,在完全無法使用時具有較低的合理性。

影響是對事件可能造成的傷害的估計。它應該從財務和聲譽的角度進行評估,並且是相對於它影響的用戶故事的價值。例如,不堪重負的數據庫可能會對電子商務系統接受新訂單的能力產生重大影響。不過,在負載平衡器後方 20 個執行個體的叢集中遺失單一執行個體,可能會造成很小的影響。

您可以將這些問題的答案與降低風險所需的權衡成本進行比較。當您考慮到風險閾值和彈性目標而考慮此信息時,它會通知您計劃積極緩解哪些故障模式的決定。