インターフェース Acknowledgment
public interface Acknowledgment
ConsumerRecord
の処理を確認するためのハンドル。受信者は非同期シナリオで参照を保存できますが、内部状態は一時的なものと見なす必要があります (つまり、後で直列化および逆直列化することはできません)- 作成者:
- Marius Bogoevici, Gary Russell
メソッドのサマリー
修飾子と型メソッド説明void
確認応答が作成されたレコードまたはバッチが処理されたときに呼び出されます。default void
acknowledge
(int index) バッチ内のインデックスでレコードを確認します。インデックスを含む、バッチ内のレコードのオフセットをコミットします。default boolean
default void
nack
(int index, DurationSE sleep) バッチ内のインデックスでレコードを否定的に確認します。インデックスの前にレコードのオフセットをコミットし、パーティションを再シークして、インデックスのレコードと後続のレコードがスリープ期間後に再配信されるようにします。default void
nack
(DurationSE sleep) 現在のレコードを否定的に確認します。ポーリングから残りのレコードを破棄し、すべてのパーティションを再シークして、スリープ期間後にこのレコードが再配信されるようにします。
メソッドの詳細
acknowledge
void acknowledge()確認応答が作成されたレコードまたはバッチが処理されたときに呼び出されます。このメソッドを呼び出すことは、パーティション内の以前のすべてのメッセージがすでに処理されていることを意味します。nack
現在のレコードを否定的に確認します。ポーリングから残りのレコードを破棄し、スリープ期間後にこのレコードが再配信されるように、すべてのパーティションを再シークします。これにより、指定されたスリープ期間中、メッセージリスナー全体の読み取りが一時停止され、単一のパーティションに限定されません。コンシューマースレッドで呼び出す必要があります。- パラメーター:
sleep
- 睡眠時間 ; 実際のスリープ時間は、この値とコンテナーのpollTimeout
(デフォルトは 5 秒)よりも長くなります。- 導入:
- 2.8.7
acknowledge
default void acknowledge(int index) バッチ内のインデックスでレコードを確認します。インデックスを含む、バッチ内のレコードのオフセットをコミットします。ContainerProperties.AckMode.MANUAL_IMMEDIATE
が必要です。インデックスは、このバッチの以前の部分バッチ承認インデックスよりも大きく、レコードリストの範囲内にある必要があります。このメソッドはリスナースレッドで呼び出す必要があります。- パラメーター:
index
- 確認するレコードのインデックス。- 導入:
- 3.0.10
nack
バッチ内のインデックスでレコードを否定的に確認します。インデックスの前にレコードのオフセットをコミットし、パーティションを再シークして、インデックスのレコードと後続のレコードがスリープ期間後に再配信されるようにします。コンシューマースレッドで呼び出す必要があります。- パラメーター:
index
- バッチ内の失敗したレコードのインデックス。sleep
- 睡眠時間 ; 実際のスリープ時間は、この値とコンテナーのpollTimeout
(デフォルトは 5 秒)よりも長くなります。- 導入:
- 2.8.7
isOutOfOrderCommit
default boolean isOutOfOrderCommit()