raft原理的動畫演示

2021-08-17 06:25:34 字數 749 閱讀 1425

過去, paxos一直是分布式協議的標準,但是paxos難於理解,更難以實現,google的分布式鎖系統chubby作為paxos實現曾經遭遇到很多坑。

來自stanford的新的分布式協議研究稱為raft,它是乙個為真實世界應用建立的協議,主要注重協議的落地性和可理解性。

在了解raft之前,我們先了解consensus一致性這個概念,它是指多個伺服器在狀態達成一致,但是在乙個分布式系統中,因為各種意外可能,有的伺服器可能會崩潰或變得不可靠,它就不能和其他伺服器達成一致狀態。這樣就需要一種consensus協議,一致性協議是為了確保容錯性,也就是即使系統中有一兩個伺服器當機,也不會影響其處理過程。

為了以容錯方式達成一致,我們不可能要求所有伺服器100%都達成一致狀態,只要超過半數的大多數伺服器達成一致就可以了,假設有n臺伺服器,n/2 +1 就超過半數,代表大多數了。

paxos和raft都是為了實現consensus一致性這個目標,這個過程如同選舉一樣,參選者需要說服大多數選民(伺服器)投票給他,一旦選定後就跟隨其操作。paxos和raft的區別在於選舉的具體過程不同。

在raft中,任何時候乙個伺服器可以扮演下面角色之一:

leader: 處理所有客戶端互動,日誌複製等,一般一次只有乙個leader.

follower: 類似選民,完全被動

candidate候選人: 類似proposer律師,可以被選為乙個新的領導人。

raft原理的動畫演示:

軌跡動畫演示的例子

這裡有一系列動態的曲線和曲面.你或者可以直接觀察,或者可以將它們錄入到選單然後執行 例如,改變引數和選項 逐步推進的平面曲線.擺線 展示.將它的方程錄入到選單.擺線是在直線上滾動的圓上一點的運動軌跡.這裡你能精確地看見擺線是如何生成的.展示.將它的方程錄入到選單.由同樣的原理,星形線 cos 3 t...

Lissajous 曲線的動畫演示

隨著常數 m 和 n 的變化,引數方程 x sin m t y sin n t 將會畫出一系列漂亮的曲線。法國物理學家 jules antoine lissajous 曾在 1857 年研究過這類曲線,因此人們把它叫做 lissajous 曲線。我在 matrix67 上看到了乙個 lissajou...

約瑟夫環動畫演示

define crt secure no warnings include 引用圖形庫標頭檔案 include include include include include define pi 3.1415926 using namespace std char str 10000 int r 2...