设置大量分区

时间:2015-12-09 09:31:55

标签: apache-kafka

我们正在考虑一个具有3个节点和大量消费者的Kafka集群的架构。我们看到分区数量较少,例如3,以及更多的消费者,例如16,实际上只有3个消费者在使用数据,因为他们是现有分区的所有者。要查看所有者,我们会执行以下操作:

Name

能够拥有许多消费者的一个解决方案是将分区数量增加到很高的数量,例如1024.这会给运行Kafka的机器带来更多的负担,但是这个负载会疯狂吗?将运行Kafka的机器拥有64GB RAM和Xeon E5-2620 CPU(6核主频为2GHz,总共24个硬件线程)。

是否还有其他原因不使用如此多的分区?

1 个答案:

答案 0 :(得分:0)

在kafka用户邮件列表中,有人回答并提供了以下文章:http://www.confluent.io/blog/how-to-choose-the-number-of-topicspartitions-in-a-kafka-cluster/

它声明:

  

根据经验,如果您关心延迟,将每个代理的分区数限制为100 xbxr可能是个好主意,其中b是Kafka集群中的代理数量,r是复制因子。

我们正在应用此规则,到目前为止它还顺利。