这是一道非常经典的 Kafka 问题,是关于 Leader 在“异常”情况下的选举问题。 背景 我们知道 Kafka 中的 Partition(分区)是存储消息的最终介质,但 Partition 又有两种分类: Leader Partition:主分区,负责数据写入和读取。 Follower Partition:副本分区,用于数据备份和主节点宕机之后的分区选举,保证了 Kafka 服务的高可用。 如下图所示: 其中,Leader Partition 是用来处理生产者和消费者请求的,而 Follower Partition 是用来保证 Kafka 集群的高可用的,也就是当 Leader P...