zookeeper之選舉機制 簡化易理解

目前有5臺服務器,每臺服務器均沒有數據,它們的編號分別是1,2,3,4,5,按編號依次啓動,它們的選擇舉過程如下:

  1. 服務器1啓動,給自己投票,然後發投票信息,由於其它機器還沒有啓動所以它收不到反饋信息,服務器1的狀態一直屬於Looking。

  2. 服務器2啓動,給自己投票,同時與之前啓動的服務器1交換結果,共2票(1票來自自己投票,另一票來自服務器1投票),由於服務器2的編號大所以服務器2勝出,但此時投票數沒有大於半數,所以兩個服務器的狀態依然是LOOKING。

  3. 服務器3啓動,給自己投票,同時與之前啓動的服務器1,2交換信息,共3票(1票來自自己投票,另2票來自服務器1、2投票),由於服務器3的編號最大所以服務器3勝出,此時投票數正好大於半數,所以服務器3成爲領導者,服務器1,2成爲小弟。

  4. 服務器4啓動,給自己投票,同時與之前啓動的服務器1,2,3交換信息,儘管服務器4的編號大,但之前服務器3已經勝出,所以服務器4只能成爲小弟。

  5. 服務器5啓動,後面的邏輯同服務器4成爲小弟。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章