如何設計全鏈路99.99%高可用架構?

鄧贏


以自己曾經設計高可用的交易系統思路請參考。

具體是考慮通訊高可用、服務高可用這兩維度來保證平臺支持服務的分佈式部署、集群容錯和負載均衡來實現。具體如下:

(一) 通訊高可用

交易系統集群模式為全節點Online模式,所有應用集群內部節點可同構橫向擴展並負載均衡。當一個節點出現故障時(如下圖),集群自動將故障節點隔離,並將交易請求分流到其它正常節點;當檢測到原故障節點恢復時自動納入集群可用節點。

通過以上機制,確保了系統在發生單點故障時,不影響整個系統運行,相對於傳統HA模式,全節點Online模式無切換不應期,保證了系統的7*24小時服務能力。

(二) 服務高可用

服務發佈和治理是通過註冊中心完成的。

當一個服務的多個提供方中有一方故障或停機更新的時候,註冊中心會及時獲取服務狀態信息並推送給消費方,消費方獲取的可用服務列表將停機的服務剔除,僅發送給正常的服務提供方;當服務恢復後,註冊中心也會推送新的服務地址給消費方,完成服務恢復。

結論:設計的目標系統所有子系統均需支持負載均衡和橫向擴展,可通過配合合理的部署方案,將能夠保證系統的軟、硬件平滑地擴容和升級,使之不僅能滿足當前的業務需要,還為今後業務領域的發展提供的擴展支持。應用系統集群模式為全節點Online模式,即所有應用集群內部節點可同構橫向擴展並負載均衡。


分享到:


相關文章: