手動提交偏移量

通常,當使用 AckMode.MANUALAckMode.MANUAL_IMMEDIATE 時,確認必須按順序進行,因為 Kafka 不會為每條記錄維護狀態,只為每個組/分割槽維護一個已提交的偏移量。從版本 2.8 開始,您現在可以設定容器屬性 asyncAcks,這允許按任意順序確認 poll 返回的記錄的確認。監聽器容器將延遲無序提交,直到收到缺失的確認。消費者將被暫停(不會投遞新記錄),直到之前 poll 的所有偏移量都已提交。

雖然此功能允許應用程式非同步處理記錄,但應理解,這會增加故障後重復投遞的可能性。
asyncAcks 啟用時,提交偏移量 時不能使用 nack()(否定確認)。