2
我面臨着卡夫卡話題的的getOffset奇怪的行爲(希望,人們並不陌生,我只是不明白的地方),從控制檯卡夫卡:一個主題的不同偏移
偏移: 第一偏移= 8625
./bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list kaf001:9092,kaf002:9092 --topic topic1 --time -2 --partitions 0
最後偏移= 16789145
./bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list kaf001:9092,kaf002:9092 --topic topic1 --time -1 --partitions 0
偏移從Java代碼:0和16780520對應。我正在使用人造物品kafka_2.10:0.8.1.1
所以,Java返回的偏移量與控制檯的偏移量不同。但是
16780520 - 0 = 16789145 - 8625.
所以,消息的數量是相同的。
它們爲什麼不同?
您的消費者在獲取這些偏移量時是否不斷消耗數據?在這種情況下,偏移量會不斷更新,因此您的差異。 – mbaxi 2014-10-10 12:33:35
不,我已經通過命令行和java代碼請求偏移量之前停止了所有消費者/生產者。 – Natalia 2014-10-10 13:40:22
你能否在這裏提供java代碼? – 2015-01-25 12:28:19