漏消費:offset提交成功,消費者端后續(xù)的數(shù)據(jù)處理未完成(建議下游步驟事務(wù)處理) 。
消費者組為了實現(xiàn)橫向擴展,應(yīng)用程序需要創(chuàng)建一個消費者群組,然后往群組里添加消費者來提高處理效率,群組里的每個消費者只處理一部分消息 。
消費者組是邏輯上的一個消費者,是由一個或多個消費者實例組成,具有可擴展性和可容錯性,消費者組內(nèi)的消費者共享一個GroupId組成;組內(nèi)每個消費者負責消費不同分區(qū)數(shù)據(jù),并行消費數(shù)據(jù);當組內(nèi)一個消費者掛了之后,其它消費者要自動承擔它的消費任務(wù) - 組內(nèi)再平衡 。
觸發(fā)再平衡消費成員與Broker分區(qū)保持心跳連接,或者消費成員處理消息時間過長,會被認為此消費者需要被移除,觸發(fā)組內(nèi)消費成員任務(wù)再分配 。以下配置任其一條件觸發(fā)再平衡:
- # 心跳連接超時的 移除條件(建議45秒)
- session.timeout.ms
- 【我的 Kafka 旅程 - Consumer】# 消息處理超時的 移除條件(建議5分鐘)
- max.poll.interval.ms
-
- # 再平衡策略配置項(可多策略組合)
- partition.assignment.strategy = Range | RoundRobin | Sticky | CooperativeSticky
- Range:單個Topic內(nèi)的重新平均分配
- RoundRobin:所有Topic的全部消費者,一起重新分配
- Sticky:一次小范圍重新分配;僅調(diào)整需要的,避免大規(guī)模重新分配
- CooperativeSticky:可多次小范圍重新調(diào)整,直至最終效果
- 增加分區(qū),增加消費者,兩者一一對應(yīng)起來,并行消費
- 調(diào)整一次最多拉取的消息條數(shù)(500條)
- 調(diào)整單次抓取的數(shù)據(jù)最大容量(50M)
經(jīng)驗總結(jié)擴展閱讀
- 電視劇我的莫格利男孩一共多少集?
- 我的莫格利男孩高婕結(jié)局是什么?
- 我的鄰居睡不著宋米哆身世是什么?
- 電視劇我的體育老師結(jié)局怎樣?
- 我的莫格利男孩儲時和誰在一起?
- 電視劇我的莫格利男孩結(jié)局是什么?
- 電視劇我和我的兒女們大結(jié)局是什么?
- 我和我的兒女們安安是誰的孩子?
- 電視劇我和我的兒女們劇情介紹?
- 電視劇我和我的兒女們芳姨扮演者是誰?
