我正在嘗試使用卡夫卡設計一些處理代理來並行處理來自卡夫卡主題的消息。卡夫卡分區和消費者羣至少一次消息傳遞
我希望確保在整個消費羣體的每個消息處理過程中接近完全一次,儘管至少可以容忍一次。
我找到的文檔在許多方面還不清楚,並且有我必須知道這是否是一個可行的辦法了幾個具體的問題:
- 如果消息被髮布到一個話題,它出現一次只能在主題中的所有分區上進行復制,或者複製到可能多於一個分區上?我已閱讀可能支持兩種可能性的陳述。
- 是每個分區或每個消費者/消費者組/分區的「偏移」嗎?
- 當我開始一個新的消費者時,它是否會查看整個消費羣組的偏移量或它爲其分配的分區?
- 如果我想擴大新的消費者並且沒有空閒分區(我認爲每個分區不能有多個消費者),kafka是否會重新平衡現有分區中的現有消息,以及這會如何影響補償和現有分區的消費者?
或者有沒有其他意見可以幫助我理解這一點?