9 ,zk 架構模型

2021-09-23 15:41:57 字數 1814 閱讀 3115

1 個主節點,其它全是備份節點。

在 zk 的框架中,要想做點什麼,不是看一台機器,而是看全體機器,需要有一半以上的機器同意才能辦。例如新增資料,是否新增成功,不是看一台兩台機器是否成功的儲存了資料,而是要看整個集群,超過一半的機器成功的儲存到資料,才認為儲存成功了。

zookeeper 集群啟動也是要遵循過半原則的 : 要超過一半的機器啟動,才認為整個集群已經啟動了。

zookeeper 集群需要有奇數臺機器,比如 3 臺,只要有 2 臺機器啟動成功,就認為集群啟動成功了。

為什麼不能 1 臺,1 也是奇數 :當然不行,如果一共才一台,那就不叫集群了,也就沒有了資料的備份了,這台機器如果壞了,資料就沒了,zookeeper 是幹嘛的,不就是為了高可用嘛,不就是為了備份嘛。

為什麼不能兩台:因為兩台,沒有辦法過半,只能達到一半,不能超過一半。所有的偶數都不好辦,都不容易造成過半。

結論:除了 1 以外,最小的奇數就是 3 了。也可以 5 臺機器,但是我們同學的電腦都是普通電腦,禁不起 5 臺虛擬機器的消耗,所以我們最後決定用 3 臺。

負責處理資料更新等操作( 遵守 zab 協議 )。

zab 協議簡介 :( 了解 )

1 ,訊息廣播 :為了資料的一致性,leader 將資料內容通知整個集群。

2 ,崩潰恢復 :如果 leader 掛了,那麼 zookeeper 集群,將會從 follower 中重新選舉乙個 leader

可以接受客戶端請求。

可以自行解決查詢任務。

不可以擅自進行資料更新操作,資料更新操作必須嚴格經過 leader 來操作。

選舉:如果 leader 掛了,follower 之間可以互相投票,注意嘍,follower 也是有可能成為 leader 的。

leader :集群中的主節點。

是整個集群的管理者,參與集群的全部工作內容,可以支配從節點。

follower :集群中的從節點 ( 備份節點 )。

集群中的備份節點,服從 leader 的命令,當 leader 掛了以後,follower 參與選舉,每個 follower 都有成為 leader 的可能性。

所以,就算 leader 掛了也不會怎麼樣,follower 之間可以重新選乙個 leader 出來,zookeeper 集群依然可以正常工作。

observer :集群中的觀察者節點。

功能跟 follower 相似,但是不參與 leader 選舉,就相當於 observer 是乙個世外高人,他只幹活,他不是 leader ,也不是 follower ,他只想要過平淡的生活,他不投票給任何人,他自己也拒絕被人家投票,他就相當於永遠只做集群的備份節點。

假如,我們存在第四臺機器,那麼,我們要在第四臺機器的 zoo.cfg 檔案中加這麼一行 :

# 本節點是 observer 節點	

peertype=observer

第四臺機器的 myid 檔案內容 :

4
每一台機器的 zoo.cfg 檔案都加這樣的一行配置 :

# 第四臺機器是 observer 節點

server.4:node04:2181:3181:observer

由於觀察節點不參與寫請求過程中達成共識的投票,因此使用觀察節點可以讓zookeeper集群在不影響寫效能的情況下提高讀操作的效能。

Tomcat架構模型

我考慮我還是先發布,最起碼有點虛榮感或者說成就感,啊哈哈哈,未修改版本,後面會有重新整理,然後修訂,再去掉這句話 參考 tomcat架構解析 直接來看一下url圖把,這裡其實很多都忘記了,就先簡單介紹一下每個類的功能。接收其他計算機 客戶端 發來的請求資料並進行解析,完成相關業務處理,然後把資料處理...

Kafka 架構模型

基於producer consumer topic broker 等的乙個基本架 kafka的元件介紹 topic 訊息根據topic進行歸類 producer 傳送訊息者 consumer 訊息接受者 broker 每個kafka例項 server zookeeper 依賴集群儲存meta資訊。t...

hadoop的架構模型

1.x的版本架構模型介紹 檔案系統核心模組 namenode 集群當中的主節點,管理元資料 檔案的大小,檔案的位置,檔案的許可權 主要用於管理集群當中的各種資料 seconddarynamenode 主要能用於hadoop當中元資料資訊的輔助管理 datanode 集群當中的從節點,主要用於儲存集群...