1. 程式人生 > >Zookeeper 學習筆記之 Leader Election

Zookeeper 學習筆記之 Leader Election

通知 客戶 就會 lec 搶占式 類型 二次 lead per

ZooKeeper四種節點類型:

  • Persist
  • Persist_Sequential
  • Ephemeral
  • Ephemeral_Sequential

在節點上可註冊的Watch,客戶端先得到通知再得到數據,Watch被fire後,不會再Watch到後續的變化。

基於ZooKeeper做Leader Election

  • 非公平模式 - 客戶端會在Persist父節點下創建Ephemeral的Leader節點,只不過是大家搶占式註冊,先到先得。即使第一次排在前面,對第二次競選也不會有影響,所以稱為非公平模式。
  • 公平模式- 先到先得,後者監視前者,在父節點下創建的是Ephemeral_Sequential的Leader節點,序列號3節點watch序列號2節點,2watch1,以此類推。當前一個節點掛掉以後,後面一個節點接到通知,就會通過客戶端獲取所有父節點下的所有子節點,如果當前註冊的節點的id在所有子節點中最小,則當前客戶端競選Leader成功。

Zookeeper 學習筆記之 Leader Election