0

如果一个生产者有 3 个主题,每个主题有 4 个分区,那么消费者组应该包含 4 个还是 12 个消费者?我要达到理想的消费。

4

2 回答 2

0

理想的消费应该有一个consumerpartition因此,对于您的情况,12 个消费者应该是理想的。

于 2020-06-01T10:56:23.313 回答
0

如果你有 N 个分区,那么在同一个消费者组中最多可以有 N 个消费者,每个消费者都从一个分区中读取。当您的消费者少于分区时,一些消费者将从多个分区中读取。此外,如果您的消费者多于分区,那么一些消费者将处于非活动状态并且根本不会收到任何消息。

您不能有多个消费者 - 在同一个消费者组内 - 消费来自单个分区的数据。因此,为了使用 N 个消费者从同一分区消费数据,您还需要创建 N 个不同的消费者组。

请注意,分区增强了 Kafka 集群内的并行性。如果您创建数千个消费者来使用仅来自一个分区的数据,我怀疑您将失去某种程度的并行性。

于 2020-06-01T11:16:06.677 回答