(五十三) springcloud+springcloud+vue+uniapp分佈式微服務電商 商城之跟我學習Apollo高可用設計分析

高可用是分佈式系統架構設計中必須考慮的因素之一,它通常是指通過設計減少系統不能提供服務的時間。

Apollo 在高可用設計上下了很大的功夫,下面我們來簡單的分析下:

1)某臺Config Service 下線

無影響,Config Service 可用部署多個節點。

2)所有 Config Service 下線

所有 Config Service 下線會影響客戶端的使用,無法讀取最新的配置。可採用讀取本地緩存的配置文件來過渡。

3)某臺 Admin Service 下線

無影響,Admin Service 可用部署多個節點。

4)所有 Admin Service 下線

Admin Service 是服務於 Portal,所有 Admin Service 下線之後只會影響 Portal 的操作,不會影響客戶端,客戶端是依賴 Config Service。

5)某臺 Portal 下線

Portal 可用部署多臺,通過 Nginx 做負載,某臺下線之後不影響使用。

6)全部 Portal 下線

對客戶端讀取配置是沒有影響的,只是不能通過 Portal 去查看,修改配置。

7)數據庫宕機

當配置的數據庫宕機之後,對客戶端是沒有影響的,但是會導致 Portal 中無法更新配置。當客戶端重啓,這個時候如果需要重新拉取配置,就會有影響,可採取開啓配置緩存的選項來避免數據庫宕機帶來的影響。

通過上面的分析,我們可以看出 Apollo 在可用性這塊做得確實不錯,各種場景會發生的問題都有備用方案,基本上不會有太大問題,大家放心大膽地使用吧。

推薦電子商務源碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章