中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Paxos變種和優化方法有哪些

發布時間:2021-12-21 13:36:19 來源:億速云 閱讀:132 作者:iii 欄目:開發技術

這篇文章主要介紹“Paxos變種和優化方法有哪些”,在日常操作中,相信很多人在Paxos變種和優化方法有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Paxos變種和優化方法有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

Multi Paxos

首先我們來回顧一下Multi Paxos,Multi Paxos在Basic Paxos的基礎上確定一系列值,其決議過程如下:

Paxos變種和優化方法有哪些

phase1a: leader提交提議給acceptor

phase1b: acceptor返回最近一次接受的提議(即曾接受的最大的提議ID和對應的value),未接受過提議則返回空

phase2a: leader收集acceptor的應答,分兩種情況處理

  phase2a.1: 如果應答內容都為空,則自由選擇一個提議value

  phase2a.2: 如果應答內容不為空,則選擇應答里面ID最大的提議的value

phase2b: acceptor將決議同步給learner

Multi Paxos中leader用于避免活鎖,但leader的存在會帶來其他問題,一是如何選舉和保持唯一leader(雖然無leader或多leader不影響一致性,但影響決議進程progress),二是充當leader的節點會承擔更多壓力,如何均衡節點的負載。Mencius[1]提出節點輪流擔任leader,以達到均衡負載的目的;租約(lease)可以幫助實現唯一leader,但leader故障情況下可導致服務短期不可用。

Fast Paxos

在Multi Paxos中,proposer -> leader -> acceptor -> learner,從提議到完成決議共經過3次通信,能不能減少通信步驟?

對Multi Paxos phase2a,如果可以自由提議value,則可以讓proposer直接發起提議、leader退出通信過程,變為proposer -> acceptor -> learner,這就是Fast Paxos[2]的由來。

Paxos變種和優化方法有哪些

Multi Paxos里提議都由leader提出,因而不存在一次決議出現多個value,Fast Paxos里由proposer直接提議,一次決議里可能有多個proposer提議、出現多個value,即出現提議沖突(collision)。leader起到初始化決議進程(progress)和解決沖突的作用,當沖突發生時leader重新參與決議過程、回退到3次通信步驟。

Paxos自身隱含的一個特性也可以達到減少通信步驟的目標,如果acceptor上一次確定(chosen)的提議來自proposerA,則當次決議proposerA可以直接提議減少一次通信步驟。如果想實現這樣的效果,需要在proposer、acceptor記錄上一次決議確定(chosen)的歷史,用以在提議前知道哪個proposer的提議上一次被確定、當次決議能不能節省一次通信步驟。

EPaxos

除了從減少通信步驟的角度提高Paxos決議效率外,還有其他方面可以降低Paxos決議時延,比如Generalized Paxos[3]提出不沖突的提議(例如對不同key的寫請求)可以同時決議、以降低Paxos時延。

更進一步地,EPaxos[4](Egalitarian Paxos)提出一種既支持不沖突提議同時提交降低時延、還均衡各節點負載、同時將通信步驟減少到最少的Paxos優化方法。

為達到這些目標,EPaxos的實現有幾個要點。一是EPaxos中沒有全局的leader,而是每一次提議發起提議的proposer作為當次提議的leader(command leader);二是不相互影響(interfere)的提議可以同時提交;三是跳過prepare,直接進入accept階段。EPaxos決議的過程如下:

Paxos變種和優化方法有哪些

左側展示了互不影響的兩個update請求的決議過程,右側展示了相互影響的兩個update請求的決議。Multi Paxos、Mencius、EPaxos時延和吞吐量對比:

Paxos變種和優化方法有哪些

為判斷決議是否相互影響,實現EPaxos得記錄決議之間的依賴關系。

到此,關于“Paxos變種和優化方法有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

揭西县| 浦北县| 郎溪县| 乌恰县| 宁安市| 政和县| 崇明县| 凉城县| 兴和县| 民和| 三河市| 洪洞县| 武山县| 海口市| 通许县| 南充市| 晋州市| 金溪县| 连平县| 刚察县| 特克斯县| 海阳市| 泗水县| 三门峡市| 九台市| 庄河市| 晋江市| 平陆县| 鹿泉市| 尼玛县| 凌云县| 南阳市| 顺义区| 拉孜县| 上饶县| 临汾市| 江津市| 霸州市| 芦山县| 宁城县| 福清市|