【发布时间】:2019-03-19 17:26:57
【问题描述】:
我们正在考虑一个具有 3 个节点和大量消费者的 Kafka 集群的架构。我们看到分区数量很少,例如3,以及更多的消费者,例如16,实际消费数据的消费者只有 3 个,因为他们是现有分区的所有者。要查看所有者,我们执行以下操作:
$ bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper localhost:2181 --group consumer_group
Group Topic Pid Offset logSize Lag Owner
consumer_group statistics 0 5335 5373 38 consumer_group_balthasar-1449651803301-63a1d620-0
consumer_group statistics 1 5335 5374 39 consumer_group_balthasar-1449651803820-35a84426-0
consumer_group statistics 2 5335 5374 39 consumer_group_balthasar-1449651803934-2b3cc1bd-0
能够拥有许多消费者的一种解决方案是将分区数量增加到较高的数量,例如1024. 这会给运行 Kafka 的机器带来更多负载,但这种负载会不会很疯狂?将运行 Kafka 的机器具有 64GB RAM 和 Xeon E5-2620 CPU(6 个主频为 2GHz 的内核,总共 24 个硬件线程)。
还有其他理由不使用如此多的分区吗?
【问题讨论】:
标签: apache-kafka