Part 12:Raft論文翻譯-《CONSENSUS BRIDGING THEORY AND PRACTICE》(基礎(chǔ)Raft-小結(jié))

Part 12:Raft論文翻譯-《CONSENSUS BRIDGING THEORY AND PRACTICE》(基礎(chǔ)Raft-小結(jié))
3.11 Conclusion(小結(jié))
本章討論了基于共識(shí)系統(tǒng)的所有核心問(wèn)題。Raft超越了就單個(gè)值達(dá)成共識(shí),就像在單個(gè)提案的Paxos算法中一樣;它對(duì)不斷增長(zhǎng)的命令日志達(dá)成了共識(shí),這是構(gòu)建一個(gè)復(fù)制狀態(tài)機(jī)所必需的。它還包括在達(dá)成協(xié)議后傳播信息,以便其他服務(wù)器學(xué)習(xí)已提交的log entry。Raft通過(guò)選擇一個(gè)集群Leader來(lái)單方面做出決定,并在一個(gè)新的Leader勝選時(shí)只傳輸必要的log entry,以一種實(shí)際和有效的方式達(dá)成共識(shí)。我們已經(jīng)在LogCabin中實(shí)現(xiàn)了Raft算法,LogCabin是一個(gè)復(fù)制狀態(tài)機(jī)(在第10章描述)。

Raft只使用了少量的機(jī)制來(lái)解決共識(shí)涉及的全部問(wèn)題。例如,它只使用兩個(gè)RPC(RequestVote和AppenEntries)。也許令人驚訝的是,創(chuàng)建一個(gè)緊湊的算法/實(shí)現(xiàn)并不是Raft的首要目標(biāo)。相反,這是我們?cè)O(shè)計(jì)的可理解性的附帶結(jié)果,其中每一個(gè)具體機(jī)制的選擇都必須得到充分的激勵(lì)和解釋。

除非我們確信某個(gè)特定的問(wèn)題會(huì)很大程度的影響Raft的部署,否則我們就不在Raft中解決它。因此,Raft的部分算法會(huì)顯得很直白。例如,Raft中的服務(wù)器通過(guò)等待選舉超時(shí)來(lái)檢測(cè)分裂投票;原則上,他們通??梢酝ㄟ^(guò)計(jì)算投給任何Candidate的選票來(lái)更早地發(fā)現(xiàn)甚至解決分裂選票。我們選擇不為Raft涉及相應(yīng)優(yōu)化方法,因?yàn)樗黾恿藦?fù)雜性,但可能沒(méi)有帶來(lái)實(shí)際的好處:在配置良好的部署中,分裂投票很少見(jiàn)。Raft的其他部分可能顯得過(guò)于保守。例如,Leader只能直接提交其當(dāng)前term的log entry,即使在某些特殊情況下,它可以安全地提交前任Leader的log entry。應(yīng)用更復(fù)雜的承諾規(guī)則將損害可理解性,并不會(huì)對(duì)性能產(chǎn)生重大影響;當(dāng)前規(guī)則的承諾只會(huì)短暫延遲。在與他人討論Raft時(shí),我們發(fā)現(xiàn)許多人不禁想到這樣的優(yōu)化并提出它們,但當(dāng)目標(biāo)是可理解的時(shí),應(yīng)該忽略過(guò)早的優(yōu)化。

不可避免地,本章可能會(huì)遺漏了一些在實(shí)踐中有用的特性或優(yōu)化。隨著實(shí)現(xiàn)者在Raft方面獲得更多的經(jīng)驗(yàn),他們將學(xué)習(xí)何時(shí)以及為什么某些附加特性可能有用,并且他們可能需要在一些實(shí)際部署中實(shí)現(xiàn)這些特性。在本章中,我們概述了一些我們目前認(rèn)為不必要的可選擴(kuò)展,但如果有需要,這可能有助于指導(dǎo)實(shí)現(xiàn)者。聚焦于可理解性,我們希望為有經(jīng)驗(yàn)的實(shí)現(xiàn)者提供了堅(jiān)實(shí)的Raft基礎(chǔ)。由于Raft在我們的測(cè)試環(huán)境中工作,我們期望僅僅作為擴(kuò)展而不是徹底的改變?cè)赗aft中采用。

<< 上一章:Raft算法-Leader轉(zhuǎn)換
下一章:Raft算法-集群變更總述 >>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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