Kafka如何选择跟随节点进行复制?

时间:2016-08-08 16:51:35

标签: apache-kafka

Kafka在多台计算机上复制主题的分区以实现容错。 每个分区都有一个领导者和一个或多个粉丝。

我想知道Kafka如何选择将成为可能候选人中每个主题/分区的追随者的机器?

例如,假设有1个主题有3个分区{A,B,C},复制因子为3.Kafka运行超过6台机器{1,2,...,6}

一个可能的任务是:

1 2 3 4 5 6
A B C
C A B
B C A

但以下也是可能的:

1 2 3 4 5 6
A B C
  A B C
    A B C

当然,有很多可能的任务。

有谁能让我知道Kafka是如何做到的?

由于

1 个答案:

答案 0 :(得分:1)

您可以查看github上的Kafka源代码,了解默认情况下它如何进行副本分配 - https://github.com/apache/kafka/blob/0.10.0/core/src/main/scala/kafka/admin/AdminUtils.scala#L47-L106