Paxos、ZAB、RAFT协议
這三個都是分布式一致性協議,ZAB基于Paxos修改后用于ZOOKEEPER協議,RAFT協議出現在ZAB協議之后,與ZAB差不多,也有很大區別。
1. Paxos
分布式節點分為3種角色, Proposer, Acceptor, Learner
Proposer:提出議案[Mn, Vn]
Accptor:決定最終議案
Learner:不參與議案的提出與決定,學習最后的議案
Proposer:
1. prepare階段:提出議案編號M, 向Acceptor集合發送
2. 如果收到來自半數以上的Acceptor響應,向Acctoptor發送Accept請求
Acceptor:
1. Prepare:響應proposer prepare請求
2. Accepte: 響應Accept請求
2. ZAB協議
節點分為3種角色1, Follower, Leader, Observer
1. 選出leader
2. 客戶端提出的事物都轉給Leader處理
類似二階段協議
1. Leader發送Propose給Fowller
2. 收到半數以上Ack,發送Commit給Follwer
3. Observer不參與Leader選舉,同步數據,數據副本。客戶端可以讀取Observer數據,提高Zookeeper集群工作效率
轉載于:https://www.cnblogs.com/luckygxf/p/9137841.html
總結
以上是生活随笔為你收集整理的Paxos、ZAB、RAFT协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ProceedingJoinPoint
- 下一篇: moment.js 常用(几天前、相差几