本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
失敗模式可觀測性
若要緩解故障模式,您必須先偵測它目前正在影響或即將影響您的工作負載。只有在出現必須採取動作的訊號時,緩解才會有效。這表示建立任何緩解措施的一部分至少包括驗證您是否具有或正在建置偵測故障影響所需的可觀測性。
您應該在兩個維度中考慮故障模式的可觀測症狀:
-
哪些主要指標會通知您,系統正在接近可能很快出現影響的條件?
-
哪些延遲指標可在故障模式發生後盡快顯示其影響?
例如,套用至資料庫元素的過度載入失敗,可能會有連線計數做為領導指標。您可以看到連線計數穩定增加,作為資料庫可能很快就超過連線限制的主要指標,因此您可以採取動作,例如終止最近使用過的連線,以減少連線計數。延遲指標指出超過資料庫連線限制的時間,且資料庫連線錯誤提升。除了收集應用程式和基礎設施指標之外,請考慮收集關鍵績效指標 (KPI),以偵測故障何時會影響您的客戶體驗。
如果可能,我們建議您在可觀測性策略中包含這兩種類型的指標。在某些情況下,您可能無法建立領導指標,但您應該始終計劃為每個要緩解的失敗設定延遲指標。若要選擇正確的緩解措施,您也應考慮前置或延遲指標是否偵測到失敗。例如,請考慮您的網站流量突然遽增。您可能只會看到延遲指標。在這種情況下,單靠自動擴展可能不是最佳緩解措施,因為部署新資源需要一些時間,而限流幾乎可以立即防止過載,讓您的應用程式有時間擴展或減少負載。相反地,如果流量逐漸增加,您會看到一個領導指標。在這種情況下,調節並不適當,因為您有時間透過自動擴展您的系統來回應。