2017-12-15 9 views
2

処理に失敗した回数x回のメッセージを再発行します。私は手動コミットコードを参照してください:レスポンスカフカで失敗したメッセージを再実行する方法0.8.2.2

しかし、processMessage()メソッドで例外を処理する方法はありますか?私は例外を処理し、カフカにメッセージを3回実行するように依頼したいと思います。それでも3回失敗したら、それを捨ててください。

答えて

0

これらのメッセージを格納するデッドレターキュー(DBなどの他の記憶域も問題ありません)を定義して解析して解決することを検討してください。

0

少なくとも1回読むことはできますが、失敗した場合は永久に停止する必要はなく、3回の再試行後にメッセージの残りの部分を処理したいと思っています。失敗したメッセージ。

これは、簡単な消費者をApacheのカフカで使用することで簡単に達成できました。それがオプションかどうか私に教えてください、そして私はそれを説明します。

反応カフカの場合、processMessageで3回再試行した後、「処理済み」メッセージが返すものを返す方法を検討する必要があります。そうすることで、次のオフセットのシンクへのコミット(失敗したメッセージのオフセット)が(処理された場合のように)インクルードされ、再び発生しません。

関連する問題