高可用與可伸縮架構

分佈式業務系統設計的時候,基本的問題有:html

1. 高可用(High Availability)
2. 可伸縮(Scalable-擴展的方法論:AKF scale cube)
3. 可擴展(Extensibility)
4. 容錯性(彈力設計-Resilience)  
5. 高性能(High Performace)
6. 容量規劃(Capacity Plan)

以上是最基本的業務訴求。
而在分佈式基礎系統設計的時候,基本的問題有:mysql

1. 體系結構
2. 進程
3. 通訊
4. 命名
5. 同步
6. 一致性與複製
7. 容錯性
8. 安全性

二者互相影響且互相決定。
理解高可用和可伸縮核心要理解複製(Replication),好比mysql主從複製的binlog,redis主從複製,etcd基於raft的複製狀態機的複製,在業務層若是設計爲無狀態,則複製會簡單。能夠說沒有複製就沒有高可用和可伸縮redis


對比擴展性與伸縮性:
高可用與可伸縮架構sql

下圖總結了不一樣層次的高可用與可伸縮的手段。安全


高可用與可伸縮架構

來源:http://www.cnblogs.com/xingzc/p/5757758.html
https://wenku.baidu.com/view/5ffbfa2fae1ffc4ffe4733687e21af45b207fe59.html架構

相關文章
相關標籤/搜索