文章列表 · 第 2/8 页

全部文章

共 80 篇 · 每页 10 篇

技术约 1 分钟

zookeeper源码学习-SyncedLearnerTracker

该类主要的功能是记录节点ack的信息,并且判断是否超过了半数等信息 这个东西是在FastleaderElection中通过getVoteTracker获取到的 关系图 变量 只有一个变量,节点验证器的ack集合,所以重点是这个qvAcksetPairs QuorumVerifierAcksetPair 用来存储验证器,…

技术约 1 分钟

zookeeper源码学习-QuorumCnxManager

原本的代码很长,只记录了个别在看代码时候有用的一些 里面会启动两个线程,一个发送线程QuorumConnectionReqThread还有一个接受线程QuorumConnectionReceiverThread。 在zk启动的时候,会在QuorumConfig里面读到所有的节点信息,然后生成一个Quorum验证器,这时…

技术约 2 分钟

zookeeper源码学习-FastLeaderElection

负责选举的相关 选举流程 1. 先判断节点当前的状态,以及是否需要停止 2. 从接收队列里面取出来一个投票,然后校验是否合法 3. 如果选举周期不一致,比较目标投票以及自己投票的信息, 然后选择更新自身的投票信息然后通知别的节点 4. 如果选举周期一致,将选票信息存入到recvset中,以接收到的节点的id为key,根…

技术约 1 分钟

zookeeper源码学习-QuorumVerifier

Quorum的验证器,Quorum是一种分布式的机制,用来定义在分布式系统中,某个请求是否能够被确认。 ZK默认的实现是QuorumMaj,也就是超过半数投票者的时候,认为投票通过

技术约 1 分钟

zookeeper源码学习-QuorumPeerMain

整个项目的启动入口 关系图 initializeAndRun main的主要内容,用于初始化配置,启动清除线程,run server runFromConfig 如果是分布式部署的话,会通过该函数进行节点的启动。如果是单节点的话,是通过ZooKeeperServerMain.main(args)的方式启动 所有代码