image.png
springkafka自定義三個(gè)隊(duì)列湿痢,一個(gè)消費(fèi)記錄隊(duì)列 recordsToProcess
一個(gè)acks確認(rèn)隊(duì)列
一個(gè)seeks,定位偏移向量隊(duì)列
springkafka每次從kafka中拉取消息放到recordsToProcess隊(duì)列里抖韩,如果隊(duì)列滿了,暫停從kafka中拉取消息撞反,等recordsToProcess消費(fèi)完了,再繼續(xù)拉取消息放入recordsToProcess 链瓦。
在確認(rèn)時(shí)蒲凶,判斷是否是手動立即確認(rèn)茄螃,如果是缝驳,調(diào)用消費(fèi)者ack方法確認(rèn),如果不是判斷根據(jù)指定的是否是timeAck策略归苍,來批量的進(jìn)行確認(rèn)用狱。