网站建设总计,seo优化师培训,装饰设计基础,手机网价格直降什么时候开始进行选举 1.服务器初始化启动的时候2.服务器运行期间连接不上leader的时候 初始化选举过程 进行leader选举至少需要两台服务器#xff0c;我们这里举例为5台服务器#xff08;1,2,3,4,5#xff09;1.启动服务器1#xff0c;第一次投票都先投给自己[1,0]。投票内…什么时候开始进行选举 1.服务器初始化启动的时候2.服务器运行期间连接不上leader的时候 初始化选举过程 进行leader选举至少需要两台服务器我们这里举例为5台服务器1,2,3,4,51.启动服务器1第一次投票都先投给自己[1,0]。投票内容[myid,zxid],myid为服务器的唯一标识zxid是事物请求的唯一标识从0开始选举出leader之后由leader分配zxid由两部分组成高32位记录事物请求所属的轮次低32位是请求次数。此时服务器1的支持率没有达到半数以上保持Looking状态。2.启动服务器2投第一票[2,0],然后与服务器1交换投票结果。3.服务器1收到服务器2的投票结果以后首先检查轮询次数是否一致然后检查服务器状态是否为Looking状态。4.检查通过开始PK首先比较zxid都为0(如果不同 大的胜出)然后比较myid大的胜出。5.服务器1更新投票结果为[2,0],服务2pk之后胜出无需更新投票结果服务器2拿到两票支持支持率没有达到半数以上继续Looking。6.启动服务器3投第一票[3,0],然后与服务器1和2交换投票结果pk完成后服务器1投票结果[3,0],服务器2投票结果[3,0],服务器3投票结果[3,0],此时支持率达到半数以上服务器3当选为leader。状态为Leading服务器1和2分别为Following7.启动服务器4和5虽然myid大于3但是由于3已经成为leader他们就自动跟随了。 服务器运行时选举过程 1.leader挂了之后follower更新状态为Looking开始进行选举leader2.开始第一轮投票跟启动时一样都投给自己3.接收其他服务器的投票检查有效性进行pk与启动时一样。运行时服务器的zxid可能不同还是大的胜出 4.统计投票5.选出leader更新状态Leading和Following 服务器状态 LOOKING:寻找leader的状态LEADING:leader领导者状态FOLLOWING:跟随着状态OBSERVING:观察者状态转载于:https://www.cnblogs.com/Smilence1024/p/8534255.html