kafka burrow报告了同一消费群体和同一主题的多个偏移量

o7jaxewo  于 2021-06-08  发布在  Kafka
关注(0)|答案(1)|浏览(452)

设置 myTopic 有一个 single partition . consumer_group 是我的 spring-boot 应用程序使用 spring-kafka 总有一个 single consumer 对于那个消费群体。 spring-kafka version 1.1.8 RELEASE 我有一个 single broker nodekafka . Kafka version 0.10.1.1 当我询问一个特定的 consumer_group 使用 burrow ,我看到同一主题的15个偏移条目。
观察

curl http://burrow-node:8000/v3/kafka/mykafka-1/consumer/my_consumer_grp
"myTopic":[
{"offsets":[
    {"offset":6671,"timestamp":1533099130556,"lag":0},
    {"offset":6671,"timestamp":1533099135556,"lag":0},
    {"offset":6671,"timestamp":1533099140558,"lag":0},
    {"offset":6671,"timestamp":1533099145558,"lag":0},
    {"offset":6671,"timestamp":1533099150557,"lag":0},
    {"offset":6671,"timestamp":1533099155558,"lag":0},
    {"offset":6671,"timestamp":1533099160561,"lag":0},
    {"offset":6671,"timestamp":1533099165559,"lag":0},
    {"offset":6671,"timestamp":1533099170560,"lag":0},
    {"offset":6671,"timestamp":1533099175561,"lag":0},
    {"offset":6671,"timestamp":1533099180562,"lag":0},
    {"offset":6671,"timestamp":1533099185562,"lag":0},
    {"offset":6671,"timestamp":1533099190563,"lag":0},
    {"offset":6671,"timestamp":1533099195562,"lag":0},
    {"offset":6671,"timestamp":1533099200564,"lag":0}
    ]

更多观察
当我重新启动应用程序时,我没有发现要创建的新偏移条目,只是时间戳一直在更新;可能是因为 auto.commit.interval.ms ;
当我开始生产/消费时;我看到了偏移量的变化和其中一个偏移量的滞后;后来,其他的抵消赶上了;这让我觉得那些是复制品; offset.retention.minutes 是默认值 1440 问题
为什么我们有15个抵销分录 burrow 报告?
如果它们是副本,为什么单个分区主题会被分成14个不同的副本 __consumer_offsets ? 有这方面的文件吗?
如果不是复制品,还有什么?

zzzyeukh

zzzyeukh1#

这是我的理解,基于文件。burrow存储可配置数量的提交偏移量。这是一扇摇窗。每次使用者提交时,burrow都会存储提交的偏移量和提交时的延迟。您看到的很可能是应用了如下存储配置(从burrow.iml中挑选)的结果:

[storage.default]
class-name="inmemory"
workers=20
intervals=15
expire-group=604800
min-distance=1

请注意,间隔设置为15。我相信这个特性只是提供了一些消费组提交和相关延迟的历史记录,而与副本无关。
编辑:
burrow wiki上的消费者滞后评估规则页面更详细地解释了此功能。简而言之,这个可配置的偏移/滞后数据窗口用于计算消费群体状态。

相关问题