Kafka基本知识二 replication和elect new leader
来源:互联网 发布:vb for循环退出 编辑:程序博客网 时间:2024/06/04 00:41
kafka读写都在一个leader, 所有的replication同步leader的LOG,并在zookeeper里面维护in-sync状态。 一个follower在in-sync列表里面有2个要求,第一和zookeeper有连接,第二必须是up-to-date,其实就是和leader的数据不能相差太远,有一个参数可以控制阀值。leader写如的数据,只要同步到了follower,并且这个follower是活着的,就意味着数据不会丢失。
那么当leader因为硬件问题crash了,如何选取新的leader呢? kafka没有使用传统的投票方式,而是采用选取in-sync列表里面有最新数据的那个follower, 那么问题又来了,如果有多个follower都具有相同数据,那么怎么选? 原理上,这些follower都可以选为new leader,官方文档好像对此并没有描述,仅仅是说这些follower都可以作为 new leader.
还有另外一种情况,如果所有的follower都crash了,leader也crash,此时会是怎样一种情形? 很显然在没有新leader之前,partition不可使用,kafka提供2种方式:
1. 等待in-sync列表里面的follower重新回到列表,并选取一个作为leader
2. 选取随便一个活着的follower,即使它不在in-sync 列表里面,
为了尽快的恢复服务,kafka默认选取第二种方式,除非 unclean.leader.election.enable 被关闭,也就是必须要求 in-sync列表里面的follower才能做为新的 leader。
上面还有问题没有解决,就是多个follower都有资格作为new leader的情况下, kafka到底是怎么处理的,目前官方文档没有给出任何解释。
- Kafka基本知识二 replication和elect new leader
- Kafka Replication & Leader election
- Leader elect
- 二.kafka leader 负载均衡
- Kafka学习之Replication tools之Preferred Replica Leader Election Tool
- Kafka Replication
- kafka基本知识
- Kafka replication tools
- kafka Replication tools
- Replication in Kafka
- Kafka-HA(Replication详解)
- kafka leader选举机制原理
- Kafka的leader选举过程
- 深入学习Kafka:Leader Election
- Kafka设计解析:Replication工具
- Kafka设计解析:Replication工具
- apache Kafka Replication设计分析
- Kafka 基本知识及常用命令
- 真Unity3d_AI四选一
- Ubuntu 开机自动开启数字键小键盘
- git常用命令总结
- 1——语音分析——技术路线
- 华为设备命令控制台的快捷键
- Kafka基本知识二 replication和elect new leader
- php 冒泡排序
- php 快排
- 如何自己开发一款js或者jquery插件
- 51Nod-1083 矩阵取数问题【DP】
- 选择排序
- php 插入排序
- Spring-在IoC中装配Bean系列文章导读
- wamp环境搭建