2017-12-21 24 views
-1

カフカで何らかのイベント処理を実現しようとしています。私はカフカのキューにイベントを投稿するプロデューサーをいくつか持っています。また、イベントを取得し、処理し、処理されたデータをDBに保存する消費者もいます。しかし、私はすべてのイベントが処理され終了したことを確認する必要があります。キューから取り出した後にイベントが処理中に突然クラッシュするとどうなりますか?この特定のイベントがまだ処理されていないことをKafkaにどのように通知できますか?既知のパターンはありますか?カフカのイベント処理確認

答えて

1

カフカのストリームバージョン0.10。*には、 "少なくとも1回"のセマンティクスがあります。すべてのイベントに独自のキーがある場合は、DBを使用すると、同じキーに書き込むと重複がないため、「一度セマンティック」と表示されます。

これが正しいことを確認したい場合は、 スタートカフカ、 、あなたのストリームを開始 はデータが取得されていることを確認し、 それはいくつかのエラーを取得しながら、今すぐあなたのDB、 キル・ストリームを停止し、 スタートDB再び、 そして、あなたが表示されます 、 スタートDB、データの生成Kafkaはデータを再びあなたのDBに再現します。

さらに読むことができるhere