下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Kafka原理剖析及实战演练 第5课Kafka Leader ElectionDATAGURU专业数据分析社区Kafka原理剖析及实战演练 第一版(Jason Guo)Zookeeper的基本操作n 四种节点类型 PERSIST, PERSIST_SEQUENTIAL, EPHEMERAL, EPHEMERAL_SEQUENTIALn 可Ø Ø ØØWatch操作Created event: Enabled with a call to existsDeleted event: Enabled with a call to exists, getData
2、, and getChildrenChanged event: Enabled with a call to exists and getDataChild event: Enabled with a call to getChildrenn Watch特征Ø客户端先得到通知再得到数据ØWatch被fire后即取消,再Watch后续变化DATAGURU专业数据分析社区Kafka原理剖析及实战演练 第一版(Jason Guo)基于Zookeeper的Leader Election抢注Leader节点非公平模式创建Leader父节点,如 /chroot,并将其设置为persis
3、t节点各客户端通过在/chroot下创建Leader节点,如/chroot/leader,来竞争Leader。该节点应被设置为ephemeraln1.2.3.4.若某创建Leader节点,则该客户端竞选为Leader若创建Leader节点失败,则竞选Leader失败,在/chroot/leader节点上得通知Leader可通过删除Leader节点来放弃Leaderexist的watch,一旦该节点被删除则获5.6.如果Leader宕机,由于Leader节点被设置为ephemeral,Leader节点会自行删除。而其它节点由于在Leader节点上了watch,故可得到通知,参与下一轮竞选,从而保
4、证总有客户端以Leader工作DATAGURU专业数据分析社区Kafka原理剖析及实战演练 第一版(Jason Guo)基于Zookeeper的Leader Election先到先得,后者监视前者公平模式创建Leader父节点,如 /chroot,并将其设置为persist节点各客户端通过在/chroot下创建Leader节点,如/chroot/leader,来竞争Leader。该节点应被设置为ephemeral_sequentialn1.2.3.客户端通过getChildren方法获取/chroot/下端竞选Leader点,如果其的节点的id在点中最小,则当前客户4.否则,在前面一个节点上w
5、atch,一旦前者被删除,则它得到通知,返回step 3(并不能直接认为成为新Leader,因为可能前面的节点只是宕机了)5.Leader节点可通过自行删除创建的节点以放弃LeaderDATAGURU专业数据分析社区Kafka原理剖析及实战演练 第一版(Jason Guo)Leader Election在Curator中的实现n LeaderLatchØ竞选为Leader后,不可自行放弃权Ø只能通过close方法放弃权Ø强烈建议增加ConnectionStateListener,当连接SUSPENDED或者LOST时视为丢失权Ø可通过await方法等待获
6、取权,并可加入timeout是否为LeaderØ可通过hasLeadership方法Ø可通过getLeader方法获取当前LeaderØ可通过getParticipants方法获取当前竞选Leader的参与方DATAGURU专业数据分析社区Kafka原理剖析及实战演练 第一版(Jason Guo)Leader Election在Curator中的实现n LeaderSelectorØ竞选Leader后回调takeLeadership方法Ø可在takeLeadership方法中实现业务逻辑Ø一旦takeLeadership方法返回,即视
7、为放弃权Ø可通过autoRequeue方法循环获取权Ø可通过hasLeadership方法是否为LeaderØ可通过getLeader方法获取当前LeaderØ可通过getParticipants方法获取当前竞选Leader的参与方DATAGURU专业数据分析社区Kafka原理剖析及实战演练 第一版(Jason Guo)Kafka“各自为政”Leader Electionn “各自为政”Leader ElectionØ每个Partition的多个Replica同时竞争Leadern 优点Ø实现简单n 缺点ØHerd Effe
8、ctØZookeeper负载过重ØLatency较大DATAGURU专业数据分析社区Kafka原理剖析及实战演练 第一版(Jason Guo)Kafka基于Controller的Leader Electionn 基于Controller的Leader ElectionØ整个集群中出一个Broker作为ControllerØController为所有Topic的所有Partition指定Leader及Followern 优点Ø极大缓解Herd Effect问题Ø减轻Zookeeper负载ØController与Leader及Follower间通过RPC通信,高效且实时n 缺点Ø
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 渗透测试员安全实践模拟考核试卷含答案
- 电子数据取证分析师岗前岗位考核试卷含答案
- 采气测试工岗前QC管理考核试卷含答案
- 溶剂精制装置操作工安全宣教竞赛考核试卷含答案
- 冷链物流员安全综合竞赛考核试卷含答案
- 酒店员工培训发展制度
- 酒店客房用品采购与供应制度
- 浪潮云票夹培训
- 超市员工培训及销售培训制度
- 浇根式培训课件
- 高层建筑灭火器配置专项施工方案
- 2023-2024学年广东深圳红岭中学高二(上)学段一数学试题含答案
- 2025年数字货币跨境结算法律场景报告
- 2026元旦主题班会:马年猜猜乐马年成语教学课件
- 2025中国农业科学院植物保护研究所第二批招聘创新中心科研岗笔试笔试参考试题附答案解析
- 反洗钱审计师反洗钱审计技巧与方法
- 检验科安全生产培训课件
- 安全生产自查自纠报告及整改措施
- 爆破施工安全管理方案
- 2026全国青少年模拟飞行考核理论知识题库40题含答案(综合卷)
- 2025线粒体医学行业发展现状与未来趋势白皮书
评论
0/150
提交评论