私は Akka Streams から始めていますが、これまでのところすべてうまくいっています。ただし、アプローチ方法がわからないユースケースに遭遇しました。このシナリオは、Kafka からのメッセージを消費するソースとしての ActorPublisher と、Cassandra テーブルを更新するシンクとしてのサブスクライバーを持つストリームです。
Kafka ~> いくつかのマッピング操作 ~> Cassandra
要点は、メッセージが正常に処理され、Cassandra に挿入されるたびに、Kafka に明示的に確認したいということです。これにより、災害が発生してサービスが失敗した場合にメッセージを読み直すことができます。つまり、少なくとも何らかの一度配信動作。Akka Streams の観点からこれにどのようにアプローチできますか?. サポートされているシナリオですか?.
自動コミット動作を使用して Kafka コンシューマーをいつでも構成できるのは事実ですが、メッセージの読み取り方法を制御したいのです。
アップデート
このトピックに関して、私たちは現在リアクティブ Kafkaを評価しており、バージョン 0.8 の時点で kafka に手動コミットが含まれています (これらの人に敬意を表します)。この機能により、必要な alo 動作を実装できます。