第一章 分布式架構
1.1 分布式具有幾個特征
- 分布性
分布式系統(tǒng)中的多臺計算機會在空間上隨意分布。
- 對等性
沒有主從枉侧,更多的是副本,此方案為分分布式系統(tǒng)對數(shù)據(jù)用戶服務提供一種冗余的方式狂芋。
- 并發(fā)性
在分布式系統(tǒng)中榨馁,一定會存在并發(fā)地操作一些共享資源的情況,諸如數(shù)據(jù)庫存儲帜矾,如何準確高效地協(xié)調(diào)分布式并發(fā)操作翼虫,是分布式系統(tǒng)架構設計中最大的挑戰(zhàn)之一。
- 缺乏全局時鐘
在分布式系統(tǒng)中屡萤,很難定義兩個事件認誰先誰后珍剑。
- 故障總是會發(fā)生
組成分布式系統(tǒng)的所有計算機,都有可能發(fā)生任何形式的故障死陆。
1.2 分布式環(huán)境的各種問題
- 通信異常招拙;網(wǎng)絡本身不可靠
- 網(wǎng)絡分區(qū);網(wǎng)絡發(fā)生異常措译,導致一部分節(jié)點通信正常别凤,另一部分節(jié)點通信不正常,俗稱“腦裂”
- 三態(tài)领虹;成功规哪、失敗、超時
- 節(jié)點故障塌衰;每個節(jié)點都有可能會出現(xiàn)故障由缆,并且每天都在發(fā)生注祖。
1.3 從ACID到CAP/BASE
- ACID 單機環(huán)境下的強一致性
- CAP (Consistency—— 一致性、Availability——可用性均唉、Partition tolerance——分區(qū)容錯性)是晨,CAP理論告訴我們一個分布式系統(tǒng)不可能同時滿足這三點,最多只能同時滿足其中兩個舔箭。
- BASE (Basically Available——基本可用罩缴、Soft state——軟狀態(tài)、Eventually consistent——最終一致性)