我正在使用Kafka 0.10.2和zookeeper 3.4.9我将我的偏移存储在Kafka经纪人身上。我在一个有5个分区的主题上运行3个消费者,所以为了检查滞后而我运行命令
./ kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group group1
第一次的结果是
TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
topic1 1 669 670 1 consumer-1-9417e05b-1cf9-4f0f-b6cd-61effdd09456 /127.0.0.1 consumer-1
topic1 4 616 617 1 consumer-3-9ba9b12e-d6c2-423f-93cd-313906a2559c /127.0.0.1 consumer-3
topic1 2 628 706 78 consumer-2-22263f3a-bb8a-4305-a1c8-fbae9f190dda /127.0.0.1 consumer-2
topic1 3 695 697 2 consumer-2-6abb5b02-3ee8-4fd2-ade3-e10e3ce7d06f /127.0.0.1 consumer-2
topic1 0 11433 39381 27948 consumer-1-30b79487-4de8-40a4-951c-02f25e8976fc /127.0.0.1 consumer-1
- - - - - consumer-5-034e5889-dcc4-4cd1-975b-0d40a88899cf /127.0.0.1 consumer-5
- - - - - consumer-3-c10d695e-e067-428f-b31a-3a5318d60ef3 /127.0.0.1 consumer-3
- - - - - consumer-4-090258c4-4d76-4cdd-8b62-f8fccf3ec097 /127.0.0.1 consumer-4
并且在运行1分钟后,相同的命令显示此结果
TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
topic1 1 345 678 333 consumer-1-9417e05b-1cf9-4f0f-b6cd-61effdd09456 /127.0.0.1 consumer-1
topic1 4 620 622 2 consumer-3-9ba9b12e-d6c2-423f-93cd-313906a2559c /127.0.0.1 consumer-3
topic1 2 708 708 0 consumer-2-22263f3a-bb8a-4305-a1c8-fbae9f190dda /127.0.0.1 consumer-2
topic1 3 545 701 156 consumer-2-6abb5b02-3ee8-4fd2-ade3-e10e3ce7d06f /127.0.0.1 consumer-2
topic1 0 11433 39385 27952 consumer-1-30b79487-4de8-40a4-951c-02f25e8976fc /127.0.0.1 consumer-1
- - - - - consumer-5-034e5889-dcc4-4cd1-975b-0d40a88899cf /127.0.0.1 consumer-5
- - - - - consumer-3-c10d695e-e067-428f-b31a-3a5318d60ef3 /127.0.0.1 consumer-3
- - - - - consumer-4-090258c4-4d76-4cdd-8b62-f8fccf3ec097 /127.0.0.1 consumer-4
在当前偏移量,滞后量和总偏移量(分区1)大于后者之前,这怎么可能呢。如果我遗漏了什么,请告诉我
答案 0 :(得分:1)
如果消费者使用seek()
,它可以倒退,因此current offset
会变小。
不确定“总偏移量”是什么意思?如果你引用log-end-offset
,那么如果将新数据写入主题分区(因此,它独立于实际的消费者群体),则此偏移量会增加。
对于lag
:这只是log-end-offset
和current offset
之间的差异。因此,由于current offset
比以前小,log-end-offset
更大,所以它也更大。