1.zookeeper基礎知識,結構和執行流程
阿新 • • 發佈:2018-11-14
zookeeper基礎知識
1.單個zookeeper結構
zookeeper結構圖
- 每個節點都為znode
- znode分為持久節點(客戶端斷開連線後,仍然存在),臨時節點(斷開連線,節點消失,不允許有子節點),順序節點(持久或臨時,編號用於鎖定和同步中)
- 每個znode維護一個stat(由版本號,操作控制列表,時間戳,資料長度組成)
znode詳解
2.zookeeper叢集結構
zookeeper叢集結構
1、client
分散式中的一個節點,訪問伺服器的配置資訊,週期性向server傳送心跳包,server向client迴應確認,如果client沒有收到迴應,則重定向到另一個server
2、server
zookeeper中的一個節點,為client提供所需的服務,給client迴應資訊表明自己是存活的
3、leader
連線任何一個節點,如果節點出現故障,leader自動修復,在service啟動時完成leader的選舉
4、follower
聽從leader的指令,完成選舉工作
2.1Leader主要有三個功能:
- 恢復資料;
- 維持與follower的心跳,接收follower請求並判斷follower的請求訊息型別;
- follower的訊息型別主要有PING訊息、REQUEST訊息、ACK訊息、REVALIDATE訊息,根據不同的訊息型別,進行不同的處理。