20大数据-zookeeper工作机制

zookeeper工作机制

投票算法:Paxos算法,衍生的azb算法;

配置文件包括三台机器min1,min2,min3;投票,投给id大的;

时序

事件

Min1【id=1】

Min2【id=2】

Min3【id=3】

1

Min1启动

投票给min1

得票1(1小于半数2票,继续投)

得票0

得票0

2

Min1启动

Min2启动

min1未发现min2

投票给min1

得票: min1 : 1

       min2:1

(小于2票,继续投)

min2未发现min1

投票给min2

得票: min1 : 1

       min2:1

(小于2票,继续投)

3

发现了min2,又启动了投票,投给id大的;

投票给min2

得票: min1 : 0

       min2:2

(min2:leader,min1:follower)

投给id大的;

投票给min2

得票: min1 : 0

       min2:2

(min2:leader,min1:follower)

4

Min3启动

(min2:leader,min1:follower)

(min2:leader,min1:follower)

发现已经有leader,直接变为follower

5

发现了min3为follower

(min2:leader,min1:follower,min3:follower)

发现了min3为follower

(min2:leader,min1:follower,min3:follower)

(min2:leader,min1:follower,min3:follower)

  架构如下图:

猜你喜欢

转载自www.cnblogs.com/qq18361642/p/11856625.html