下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 仓库管理实务试题及答案
- 测绘员工职业规划指南
- 安全体系制度手册讲解
- 昆明安全生产监督动态讲解
- 人工智能赋能娱乐产业
- 英语公开课坐井观天Frog-in-the-Well
- 初中综合实践活动八年级下册《校园环保主题创意设计与制作》知识清单
- 数溯本源·构网联知-小学四年级数学“小数的意义和性质”单元整体复习教案
- 建厂四邻同意协议书
- 赌债离婚协议书
- 2025-2026学年渎粤语教学设计和教案
- Transformer架构详解:理解大模型的基石
- 2025年鸡西市虎林市社区工作者公开招聘笔试真题(含完整答案解析)
- 砌体平整度垂直度检测记录
- 钢结构防火涂料施工方案及技术措施
- 山东省公安机关危险化学品信息管理系统企业端操作说明书
- 2025-2026学年冀教版三年级数学下册期末综合素质达标卷(含答案)
- 小学数学教学中几何图形认知与虚拟现实技术结合的课题报告教学研究课题报告
- 连云港交通控股集团2026年招聘笔试题库
- 2026数字人民币运营管理中心有限公司招聘笔试历年参考题库附带答案详解
- 2026《绿色建筑学报》编辑部专业技术人员招聘3人备考题库及完整答案详解1套
评论
0/150
提交评论