paxos協(xié)議

協(xié)議解決的問題

paxos解決了分布式系統(tǒng)就某一個(gè)值達(dá)成一致的問題。下面就分布式系統(tǒng)中選主來介紹paxos協(xié)議過程,協(xié)議詳細(xì)過程見https://en.wikipedia.org/wiki/Paxos_(computer_science)

協(xié)議過程

在分布式系統(tǒng)中選主最直接的方法是直接選定集群的一個(gè)節(jié)點(diǎn)為leader,其它的節(jié)點(diǎn)為follower,這樣引入的一個(gè)問題是如果leader節(jié)點(diǎn)掛掉,整個(gè)集群就掛掉了。需要有一種算法自動選主,如果leader節(jié)點(diǎn)掛掉,則從follower節(jié)點(diǎn)中選出一個(gè)主節(jié)點(diǎn)。協(xié)議分為這幾個(gè)角色:

  • Proposer: 決議提出者
  • Acceptor:決議接收者
  • Learner:對結(jié)果進(jìn)行學(xué)習(xí)

集群中的一個(gè)節(jié)點(diǎn)可以同時(shí)扮演多個(gè)角色,協(xié)議分為兩階段:

  • 一階段
    一階段分為兩個(gè)步驟:Prepare和Promise,如下圖所示
paxos第一階段.jpg

(1)1a:Prepare
Proposer向所有Acceptor提出Prepare請求,prepare請求包含一個(gè)全局唯一遞增的序號N1,全局唯一是指每次每個(gè)Proposer發(fā)起的序號都不一樣,遞增是指每個(gè)Proposer發(fā)起的序列號是遞增的。
(2)1b:Promise
Acceptor收到Proposer的Prepare請求時(shí),先和Acceptor的maxNum(此Acceptor收到的最大序號)進(jìn)行比較,如果maxNum > N1,則拋棄此Proposer的請求;maxNum < N1,設(shè)置maxNum的值為N1,且maxNum = N1,回復(fù)此Acceptor接受的最大編號N及其對應(yīng)的值V

  • 二階段
    二階段也分為兩個(gè)步驟:Accept Request和Accepted,如下圖所示
    paxos第二階段.jpg

    (3)2a:Accept Request
    Proposer收到超過半數(shù)的Acceptor的Promise時(shí),會從Promise中選出返回編號最大的N對應(yīng)的值V1,發(fā)送給Acceptor;此時(shí)如果N1小于maxNum,拋棄請求;N1大于maxNum,更新此Acceptor接受的最大編號N
    (4)2b:Accepted
    Acceptor對滿足2a階段的請求,返回Accepted給Proposer,Proposer收到超過半數(shù)的回復(fù),發(fā)送選主信息給Leaner
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 原文:Paxos Made Simple作者:Leslie Lamport時(shí)間:01 Nov 2001 1 Int...
    隨安居士閱讀 1,644評論 1 2
  • 問題: 基于消息傳遞通信模型的分布式系統(tǒng),不可避免的會發(fā)生以下錯誤:進(jìn)程可能會慢、被殺死或者重啟,消息可能會延遲、...
    LaxChan閱讀 2,063評論 6 1
  • 此文知識來自于:《從Paxos到Zookeeper分布式一致性原理與實(shí)踐》第二章分布式入門基礎(chǔ)知識,由于博主對其理...
    李文文丶閱讀 2,046評論 0 0
  • Paxos是什么 Paxos算法是基于消息傳遞且具有高度容錯特性的一致性算法,是目前公認(rèn)的解決分布式一致性問題最有...
    jiangmo閱讀 1,588評論 0 6
  • 昨天我們介紹了拜占庭將軍問題和FLP Impossibility, 我們知道了在異步網(wǎng)絡(luò)中的total corre...
    點(diǎn)融黑幫閱讀 1,690評論 0 6

友情鏈接更多精彩內(nèi)容