Kafka的分区数是不是越多越好

参考答案

1.  分区多的优点

  • Kafka使用分区将topic的消息打算到多个分区分布保存在不同的broker上,实现了producer和consumer消息处理的高吞吐量。
  • Kafka的producer和consumer都可以多线程地并行操作,而每个线程处理的是一个分区的数据。因此,分区实际上是调优Kafka并行度的最小单元。
  • 对于producer,它实际上是用多个线程并发地向不同分区所在的broker发起socket连接,同时给这些分区发送消息。
  • 对于consumer,同一个消费组内的所有consumer线程,都被指定topic的某一个分区进行消费。
  • 理论上,如果一个topic分区越多,整个集群所能达到的吞吐量就越大。

1.2 分区不是越多越好

  • 分区越多,客户端/服务器端需要使用的内存就越多;
  • 分区越多,文件句柄的开销越多;
  • 分区越多,会降低高可用性。

以上,是 Kafka 面试题【Kafka的分区数是不是越多越好】的参考答案。

输出,是最好的学习方法

欢迎在评论区留下你的问题、笔记或知识点补充~

—end—

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧