私は多数の消費者が消費するメッセージをKafkaに公開しています。これらは等冪であるので、1つのメッセージが複数回消費されるかどうかは関係ありません。Kafka:メッセージがまだ存在しない場合にのみ公開する
ただし、パフォーマンス上の理由から、私の(単一の)プロデューサーが既にキューに存在するメッセージを公開することは望ましくありません。メッセージがID文字列であるとしましょう.2つのメッセージが等しいかどうかを確認するのは非常に簡単です。
私はカフカだけではこのようなパフォーマンスの向上に対処できないと考えています。この問題に対処するためのツールやコンセプトはありますか?
複数回処理されていない(または識別できていない)ため、または理由があるため、複製を公開したくないのですか?すでに処理されたメッセージ、または処理されなかったメッセージもプッシュしたくないのですか?カフカに加えてあなたが許容できるインフラストラクチャーは何ですか?あなたは "圧縮された"トピックの使用について考えましたか? –
はい - 処理に時間がかかり、処理に時間がかかる重複でキューが満杯になります。これは、すべての重複の後に続く他のメッセージの処理を遅らせます。私の目標は、メッセージを公開しようとしているのであれば、すでにキューに入っているかどうか(位置は問題ではありません)を確認したいのですが、そうであれば公開したくありません。私は圧迫を調べる必要があると思います、ありがとう。 – valenterry
すでに処理されキューから取り出された新しいメッセージを送信することを許可していますか?または、すでに処理されたメッセージに対しても重複を検出する必要がありますか? –