設計原則
更新時間:
在分布式系統中,需要考慮的穩定性問題比較復雜,貫穿軟件系統設計態、研發態、運維態、運行態,覆蓋從IaaS、PaaS到上層SaaS系統,所有這些都可能會影響系統的穩定性。為了確保系統能夠持續穩定地工作,建議遵循以下設計原則。
面向失敗的架構設計原則
眾所周知,系統異常事件是不可避免的,如網絡延遲、硬件故障、軟件錯誤、突峰流量等,建議在系統設計階段就要從這些異常事件引起的系統執行“失敗”出發,提供冗余、隔離、降級、彈性等能力,旨在確保系統的高可用性和高可靠性,以應對不可避免的故障和意外發生。
面向精細的運維管控原則
由于業務的擴展和系統服務進一步拆分,分布式系統的復雜度劇增。再加上產品迭代加快,版本繁多,同時某些業務對實時性有較高要求,運維的不確定性和復雜性大幅增加。建議通過精細化的管理和可觀測手段,如版本控制、灰度發布、監控告警、自動巡檢等手段,旨在提高運維效率、確定性和穩定性。
面向風險的應急快恢原則
在一些場景下,即使設計了各種技術手段去提高系統的冗余、保持業務的高可用,但還是避免不了生產系統故障的發生,所以需要面對故障建立一個高效的故障應急流程機制和穩定的技術平臺,實現故障風險實時發現、應急團隊有效協同、處理過程準確記錄、故障快速止損和恢復以及后續故障復盤,旨在提高故障應急效率,減小故障影響,降低類似故障的再次發生,提升系統整體高可用性。
文檔內容是否對您有幫助?