国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

分布式協(xié)議Raft和Paxos詳解

這篇具有很好參考價(jià)值的文章主要介紹了分布式協(xié)議Raft和Paxos詳解。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、Raft是一種相對(duì)簡(jiǎn)化的分布式一致性算法,它由Diego Ongaro和John Ousterhout于2013年提出。與Paxos相比,Raft的設(shè)計(jì)目標(biāo)是使一致性問題更易于理解、實(shí)現(xiàn)和部署。

Raft協(xié)議核心思想是將一致性問題分解為幾個(gè)關(guān)鍵組件,包括領(lǐng)導(dǎo)者選舉、日志復(fù)制和安全性。

  1. 領(lǐng)導(dǎo)者選舉:Raft協(xié)議通過選舉一個(gè)節(jié)點(diǎn)作為領(lǐng)導(dǎo)者來協(xié)調(diào)整個(gè)系統(tǒng)的操作。每個(gè)節(jié)點(diǎn)在初始狀態(tài)下都是跟隨者(Follower)。跟隨者只負(fù)責(zé)接收來自領(lǐng)導(dǎo)者或候選者的指令,并進(jìn)行相應(yīng)的操作。如果跟隨者在一段時(shí)間內(nèi)沒有接收到領(lǐng)導(dǎo)者的心跳信號(hào),則會(huì)觸發(fā)新的選舉過程。選舉過程中,節(jié)點(diǎn)會(huì)轉(zhuǎn)變?yōu)楹蜻x者(Candidate),并向其他節(jié)點(diǎn)發(fā)送投票請(qǐng)求。如果候選者得到多數(shù)節(jié)點(diǎn)的支持,則成為新的領(lǐng)導(dǎo)者。

  2. 日志復(fù)制:一旦選出領(lǐng)導(dǎo)者,它就負(fù)責(zé)接收客戶端的操作請(qǐng)求并將其轉(zhuǎn)換為日志條目(Log Entries)。領(lǐng)導(dǎo)者將這些日志條目廣播給其他節(jié)點(diǎn),并要求它們復(fù)制這些條目以保持一致性。當(dāng)大多數(shù)節(jié)點(diǎn)(大致上半數(shù)以上)確認(rèn)復(fù)制成功后,領(lǐng)導(dǎo)者將該日志條目提交(Commit),并將結(jié)果應(yīng)用于狀態(tài)機(jī)。然后領(lǐng)導(dǎo)者通知其他節(jié)點(diǎn)該日志已經(jīng)提交,其他節(jié)點(diǎn)也可以將其應(yīng)用到狀態(tài)機(jī)上。這樣,整個(gè)系統(tǒng)就保持了數(shù)據(jù)的一致性。

  3. 安全性:Raft協(xié)議通過限制領(lǐng)導(dǎo)者的行為來確保安全性。領(lǐng)導(dǎo)者在向其他節(jié)點(diǎn)發(fā)送日志條目之前,必須等待大多數(shù)節(jié)點(diǎn)(包括自身)確認(rèn)前一條日志已經(jīng)復(fù)制成功。這樣可以防止過期的領(lǐng)導(dǎo)者覆蓋了新的日志條目。如果領(lǐng)導(dǎo)者失效,系統(tǒng)會(huì)觸發(fā)新的選舉過程,確保選出新的領(lǐng)導(dǎo)者。

總體而言,Raft算法的設(shè)計(jì)相對(duì)清晰,并且易于理解和實(shí)現(xiàn)。它提供了領(lǐng)導(dǎo)者選舉、日志復(fù)制和安全性等基本機(jī)制,以實(shí)現(xiàn)分布式系統(tǒng)中的一致性。由于其簡(jiǎn)單性和可理解性,Raft被廣泛用于構(gòu)建可靠的分布式系統(tǒng)。

二、Paxos協(xié)議是一種分布式一致性協(xié)議,由Leslie Lamport于1990年提出。它被廣泛應(yīng)用于分布式系統(tǒng)中,用于解決在異步網(wǎng)絡(luò)環(huán)境下的一致性問題。

Paxos協(xié)議的核心思想是通過多個(gè)階段的消息傳遞和投票來達(dá)成一致。以下是Paxos協(xié)議的基本流程:

  1. 階段一:準(zhǔn)備(Prepare)

    • 提議者(Proposer)選擇一個(gè)提案號(hào)(Proposal Number),并向多個(gè)接受者(Acceptor)發(fā)送準(zhǔn)備請(qǐng)求。
    • 接受者收到準(zhǔn)備請(qǐng)求后,如果收到的提案號(hào)大于等于之前的最高提案號(hào),則接受者返回一個(gè)承諾(Promise),其中包含接受者之前接受的最高提案號(hào)及其對(duì)應(yīng)的提案值。
    • 如果接受者已經(jīng)接受了某個(gè)提案,則將該提案的提案號(hào)及其對(duì)應(yīng)的提案值作為返回承諾的一部分。
  2. 階段二:接受(Accept)

    • 如果提議者收到了大多數(shù)接受者返回的承諾,則提議者可以發(fā)送接受請(qǐng)求。
    • 接受請(qǐng)求中包含提議者選擇的提案號(hào)以及根據(jù)收到的承諾確定的提案值。
    • 接受者收到接受請(qǐng)求后,如果接受者收到的提案號(hào)大于等于之前承諾的最高提案號(hào),則接受請(qǐng)求,并返回一個(gè)接受回復(fù)(Accepted)。
    • 如果接受者接受了某個(gè)提案,則將接受回復(fù)中的提案號(hào)及其對(duì)應(yīng)的提案值記為當(dāng)前接受的提案。
  3. 階段三:學(xué)習(xí)(Learn)

    • 當(dāng)提議者收到大多數(shù)接受者返回的接受回復(fù)后,提議者知道自己的提案已經(jīng)被大多數(shù)節(jié)點(diǎn)接受。
    • 提議者可以發(fā)送學(xué)習(xí)請(qǐng)求(Learn Request)來廣播已經(jīng)被接受的提案。
    • 接受者收到學(xué)習(xí)請(qǐng)求后,將保存該提案并告知其他節(jié)點(diǎn)。

Paxos協(xié)議通過階段一和階段二的消息傳遞和投票過程,保證了在異步網(wǎng)絡(luò)環(huán)境下的一致性。協(xié)議要求提議者需要得到大多數(shù)接受者的確認(rèn)才能繼續(xù)推進(jìn),以確保系統(tǒng)的一致性。文章來源地址http://www.zghlxwxcb.cn/news/detail-605560.html

到了這里,關(guān)于分布式協(xié)議Raft和Paxos詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 分布式「走進(jìn)分布式一致性協(xié)議」從2PC、3PC、Paxos 到 ZAB

    分布式「走進(jìn)分布式一致性協(xié)議」從2PC、3PC、Paxos 到 ZAB

    設(shè)計(jì)一個(gè)分布式系統(tǒng)必定會(huì)遇到一個(gè)問題—— 因?yàn)榉謪^(qū)容忍性(partition tolerance)的存在,就必定要求我們需要在系統(tǒng)可用性(availability)和數(shù)據(jù)一致性(consistency)中做出權(quán)衡 。這就是著名的 CAP 一致性(Consistency)是指多副本(Replications)問題中的數(shù)據(jù)一致性。關(guān)于分布式

    2024年02月03日
    瀏覽(28)
  • 一篇文章讓你弄懂分布式一致性協(xié)議Paxos

    Paxos算法由Leslie Lamport在1990年提出,它是少數(shù)在工程實(shí)踐中被證實(shí)的強(qiáng)一致性、高可用、去中心的分布式協(xié)議。Paxos協(xié)議用于在多個(gè)副本之間在有限時(shí)間內(nèi)對(duì)某個(gè)決議達(dá)成共識(shí)。Paxos協(xié)議運(yùn)行在允許消息重復(fù)、丟失、延遲或亂序,但沒有拜占庭式錯(cuò)誤的網(wǎng)絡(luò)環(huán)境中,它利用“大

    2024年02月09日
    瀏覽(19)
  • 【分布式】分布式共識(shí)算法 --- RAFT

    【分布式】分布式共識(shí)算法 --- RAFT

    CAP原則又稱CAP定理,指的是在一個(gè)分布式系統(tǒng)中,一致性(Consistency)、可用性(Availability)、分區(qū)容錯(cuò)性(Partition tolerance) It states, that though its desirable to have Consistency, High-Availability and Partition-tolerance in every system, unfortunately no system can achieve all three at the same time. 在分布式系

    2024年02月06日
    瀏覽(25)
  • 分布式一致性算法Paxos

    分布式一致性算法Paxos

    ????????Paxos算法是Lamport宗師提出的一種基于消息傳遞的分布式一致性算法,是目前公認(rèn)的解決分布式一致性問題最有效的算法之一。Google Chubby的作者M(jìn)ike Burrows曾經(jīng)狂妄的說過這個(gè)世界上只有一種一致性算法,那就是Paxos,其它的算法都是殘次品。 ????????Paxos算法是

    2023年04月16日
    瀏覽(94)
  • 【分布式共識(shí)算法】Basic Paxos 算法

    【分布式共識(shí)算法】Basic Paxos 算法

    basic paxos算法:描述的是多個(gè)節(jié)點(diǎn)就某個(gè)值達(dá)成共識(shí)。 muti-paxos 算法:描述的是執(zhí)行多個(gè)basic paxos實(shí)例,就一系列值達(dá)成共識(shí)。 共識(shí)其實(shí),比如當(dāng)多個(gè)客戶端請(qǐng)求服務(wù)器,修改同一個(gè)值X 多個(gè)階段達(dá)成共識(shí)。 角色:提議者、接受者、學(xué)習(xí)者。 提議者 :說白了就是提出一個(gè)值,

    2024年02月12日
    瀏覽(18)
  • 分布式共識(shí) - Raft 算法

    分布式共識(shí) - Raft 算法

    本文由 SnailClimbopen in new window 和 Xieqijunopen in new window 共同完成。 Raft協(xié)議由Diego Ongaro和John Ousterhout(斯坦福大學(xué))開發(fā),Diego于2014年獲得了博士學(xué)位。Raft的設(shè)計(jì)是為了更好地理解如何實(shí)現(xiàn)一致性,考慮到它的前身Paxos算法,由Lesli Lamport開發(fā),非常難以理解和實(shí)現(xiàn)。因此,Di

    2024年02月20日
    瀏覽(23)
  • 提升Raft以加速分布式鍵值存儲(chǔ)

    提升Raft以加速分布式鍵值存儲(chǔ)

    Raft是當(dāng)前廣泛使用的共識(shí)算法。流行的系統(tǒng),如Kafka、Cockroach DB、MongoDB、Neo4j、Splunk等,都使用Raft來實(shí)現(xiàn)共識(shí)。系統(tǒng)要么是最終一致性的,要么是強(qiáng)一致性的。線性一致性是一致性模型中最強(qiáng)大的,但實(shí)現(xiàn)它可能很耗時(shí)。鍵值數(shù)據(jù)庫出現(xiàn)在市場(chǎng)上,以避免SQL數(shù)據(jù)庫的復(fù)雜性并

    2024年01月19日
    瀏覽(26)
  • 聊聊分布式架構(gòu)09——分布式中的一致性協(xié)議

    聊聊分布式架構(gòu)09——分布式中的一致性協(xié)議

    目錄 01從集中式到分布式 系統(tǒng)特點(diǎn) 集中式特點(diǎn) 分布式特點(diǎn) 事務(wù)處理差異 02一致性協(xié)議與Paxos算法 2PC(Two-Phase Commit) 階段一:提交事務(wù)請(qǐng)求 階段二:執(zhí)行事務(wù)提交 優(yōu)缺點(diǎn) 3PC(Three-Phase Commit) 階段一:CanCommit 階段二:PreCommit 階段三:doCommit 優(yōu)缺點(diǎn) Paxos算法 拜占庭將軍問題

    2024年02月08日
    瀏覽(27)
  • 分布式【Zookeeper ZAB協(xié)議】

    分布式【Zookeeper ZAB協(xié)議】

    1.1 什么是Zab協(xié)議? Zab協(xié)議的全稱是 Zookeeper Atomic Broadcast (Zookeeper原子廣播)。 Zookeeper 是通過 Zab 協(xié)議來保證分布式事務(wù)的最終一致性 。 Zab協(xié)議是為分布式協(xié)調(diào)服務(wù)Zookeeper專門設(shè)計(jì)的一種 支持崩潰恢復(fù) 的 原子廣播協(xié)議 ,是Zookeeper保證數(shù)據(jù)一致性的核心算法。Zab借鑒了Pa

    2024年02月03日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包