Kafka的“消费者补偿”这个主题是什么

3okqufwl  于 2021-06-07  发布在  Kafka
关注(0)|答案(3)|浏览(325)

当我运行这个命令时,我得到两个主题。我知道我创建了测试主题,但是我看到了一个额外的主题,名为“\u consumer\u offset”。从名称上看,它意味着它与消费者补偿有关,但它是如何使用的? $ bin/kafka-topics.sh --list --zookeeper localhost:2181 __consumer_offsets test ```
$ bin/kafka-topics.sh --describe --zookeeper localhost:2181
Topic:__consumer_offsets PartitionCount:50 ReplicationFactor:1 Configs:segment.bytes=104857600,cleanup.policy=compact,compression.type=producer
Topic: __consumer_offsets Partition: 0 Leader: 0 Replicas: 0 Isr: 0
Topic: __consumer_offsets Partition: 1 Leader: 0 Replicas: 0 Isr: 0
*
*
*
Topic: __consumer_offsets Partition: 48 Leader: 0 Replicas: 0 Isr: 0
Topic: __consumer_offsets Partition: 49 Leader: 0 Replicas: 0 Isr: 0

这是发生在Kafka1.1.0和为什么有50个分区。同时也在寻找一种方法来禁用它,因为每次我尝试运行“描述”主题时,它首先会打印50个分区的消费偏移量,然后再打印我的主题。
a5g8bdjr

a5g8bdjr1#

使用者在kafka主题中存储最后一次使用的消息偏移量id __consumer_offsets 基于消费者组id。
这使不同的使用者(显然具有不同的使用者id)能够处理上一条已消费消息之后的下一条消息,并避免重复的消息处理。

6xfqseft

6xfqseft2#

主题 __consumer_offsets 消费者使用它来存储他们所读取的消息的偏移量。它启用恢复当消费者重新启动它将读取最后一个位置,它消费之前,它去et处理下一个偏移量。
@cricket\u007是对的,在kafka中,默认情况下可以有重复,这是至少使用过一次的语义。

c90pui9n

c90pui9n3#

在Kafka的最初版本中,偏移量是由zookeeper管理的,但是Kafka随着时间的推移不断演变,引入了许多新特性。现在kafka在一个内部/系统级主题中管理偏移量,即消费者偏移量。
每当您在没有明确指定分区数的情况下创建一个主题时,kafka最终会默认为该主题创建50个分区。这同样意味着“消费者补偿”这一主题。

相关问题