kafka群集失败处理说明

at0kjp5o  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(364)

我想设置一个apachekafka集群,以便在新项目中使用它。不幸的是,我找不到任何关于kafka如何处理代理失败和网络分区的详细解释。例如,如果我有一个由2个或更多代理组成的集群,并且有1个节点失败,那么只有一个节点继续接受消息吗?如果是,当第二个数据再次出现时,它如何重新同步丢失的数据?

wko9yo5t

wko9yo5t1#

看看这里和这里对Kafka使用的复制协议的描述。Kafka主题中的每个分区都有一个“leader”,消息被发送到leader。消息被复制到“followers”。
所以具体回答你们的问题,我的理解是:
如果我有一个由2个或更多代理组成的集群,并且有1个节点失败,那么只有一个节点继续接受消息吗?
无论如何,只有一个节点接受消息;引线节点。如果一个追随者失败了,领导者继续接受信息。如果领导人失败了,新的领导人将从那些最新的追随者中选出。
如果是,当第二个数据再次出现时,它如何重新同步丢失的数据?
“followers”充当“leader”的消费者,因此一旦恢复,follower将继续使用来自leader的消息以恢复同步。

相关问题