卡夫卡主题数量限制

时间:2018-10-16 19:18:53

标签: apache-kafka

我有一个特殊的用例,在kafka中可能需要大量的主题。本质上,这是针对时间序列的,因此希望获得一个大致的了解,我应该如何处理。

我知道理论上没有限制,但实际上会有一些限制。想在这里获得一些专家意见。

是否可以扩展到例如一百万个甚至更高的主题?

1 个答案:

答案 0 :(得分:3)

嗯,在集群上没有为主题/分区定义固定数字。但是肯定有一些最佳实践描述了如何有效地扩展集群。

实际上,主题本身的数量实际上并不能决定集群的可扩展性。分区数影响更大,而不是主题数。每个主题可以有一个或多个分区。您拥有的分区数量越多,将打开更多的文件句柄,这将影响延迟。另外,更多的分区会增加不可用性。

因此,当您进行群集大小和容量规划时,请遵循以下规则来稳定群集。

  

根据经验,如果您关心延迟,那可能是一个好习惯   将每个代理的分区数限制为100 x b x r的想法,   其中b是Kafka集群中经纪人的数量,r是   复制因子。

以下是合流博客的精彩博客文章: https://www.confluent.io/blog/how-choose-number-topics-partitions-kafka-cluster

我个人遇到5600个主题/ 23000个分区和6个Broker节点集群的问题。由于巨大的打开文件句柄,经纪人变得不可用,我们不得不将群集扩展到12个节点。