首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

zookeeper-3.4.10的安装配置

leader:能接收所有的读写请求,也可以处理所有的读写请求,而且整个集群中的所有写数据请求都是由leader进行处理 follower:能接收所有的读写请求,但是读数据请求自己处理,写数据请求转发给leader observer:跟follower的唯一的区别就是没有选举权和被选举权 因为hadoop01、hadoop02和hadoop03具有选举权,所以它们的角色是变化的,当leader宕机,会重新选举leader,而hadoop04的角色是observer,所以它没有选举和被选举权,只负责处理请求 要求:整个zookeeper集群中可以参与选举的节点的个数为奇数个,因为zookeeper的选举机制为半数机制,即超过一半的节点投票给某个节点,该节点就是新的leader

04

zookeeper领导者选举源码分析

QuorumCnxManager主要负责和其他节点数据传输 sendqueue:选票发送队列,用于保存待发送的选票。 recvqueue:选票接收队列,用于保存接收到的外部投票。 WorkerReceiver:选票接收器。其会不断地从QuorumCnxManager中获取其他服务器发来的选举消息,并将其转换成一个选票,然后保存到recvqueue中,在选票接收过程中,如果发现该外部选票的选举轮次小于当前服务器的,那么忽略该外部投票,同时立即发送自己的内部投票。 WorkerSender:选票发送器,不断地从sendqueue中获取待发送的选票,并将其传递到底层QuorumCnxManager中。 recvQueue:当前节点接受信息的列队 senderWorkerMap:每台节点对应的senderworker,<Long, SendWorker>,Long为服务器myid,SendWorker用于从queueSendMap存的Queue取数据发送给其他节点的,是个线程

01
领券