kafka遇到的bug(待解決)
1.場景
有個項目版本v1,kafka版本較老,對項目進行了升級,開發出項目版本v2。項目使用kafka多線程消費,v1使用的消費者組為A.為了驗證升級后的代碼的正確性,新開了兩個消費者組B、C,A、B、C三個消費者組消費同一個topic,消費者組B創建了有半個多月了,C今天創建的。在驗證過程中遇到了一下問題:
2.問題
1)消費者組報錯不存在
Consumer group "C" does not exist.
這個報錯查到的資料都說是沒有進行消費,但是我十分確定消費者組C消費過N次了,查看消費情況都會提示不存在。
2)消費者組報錯沒有活躍成員。
Consumer group 'B' has no active members
網上資料也是說沒有進行消費,我也確認過消費很久了。
3) 實際有消費,offset無變動的問題。
這里面包含好幾個問題:
第一個是無論我用latest還是earliest消費,在實際有消費數據的前提下,我用命令行 ./kafka-consumer-groups.sh --new -consumer --bootstrap-server kafka1:9092 --describe --group B 查看偏移量的時候,偏移量不會改變。
第二個問題是我停掉項目,offset改為earliest再啟動,在不發送消費數據的前提下,項目自動消費以前的數據,大多是重復消費。 用命令行查看偏移量的時候,偏移量不會改變。
第三個問題是我停掉項目,offset改為latest在啟動,如果不發送消費數據,項目無異常,但是如果我發送消費數據,確認數據已經發送完,但是沒有被消費完,(舉個栗子,我發送了500條數據,確認已經發送完,確認只消費了200條,還有300條沒有消費),此時我停止項目,再啟動,正常情況應該是繼續消費那300條數據,但是真實情況是300條再也沒有被消費,offset 顯示有兩條未消費(正常應該顯示300條),數據就這樣丟失了。
以上問題尚未找到問題所在。