0

制御できない取引所のキューからデータを取得する必要があるユース ケースがあります。ユースケースは、このキューから常にメッセージを取得することです。ローカル データストアに保存する前に、rabbitmq で、またはプラグインを使用/作成することで、メッセージの 90% を一度に破棄できるかどうか疑問に思います。これは、すべてのメッセージを保存することはできず、10% しか保存できないためです。明らかに、私のアプリケーションでそうする方法の1つです。しかし、rabbitmqレベルでそれを行う方法があるのだろうか.

これについて何か考え/解決策があるかどうか疑問に思っています。

4

3 に答える 3

1

交換を制御できない場合は、アプリ内での操作にほぼ制限されます。

nack を使用してメッセージを一括拒否できます。ヘルプ ページは次のとおりです: http://www.rabbitmq.com/nack.html

于 2014-06-23T19:22:47.293 に答える
0

AMQP 仕様により、rabbitmq キューはそのメッセージを接続されたコンシューマーにラウンド ロビン アルゴリズムで渡します。したがって、コードが rabbitmq キューの唯一のコンシューマーであり、アプリケーションで受信メッセージの約 90% を無視し、残りの 10% のみを処理する場合は、.... 10 の異なるコンシューマーを同時に使用して同じキューに接続します (すべての可能性があります)。同じ言語または差分で書かれているかどうかは問題ではありません)、メッセージ処理ロジックをそれらのいずれか 1 つまたは 2 つに記述します....残りの 8/9 のコンシューマーを放棄します (これらは rabbitmq によって [そして概念的には私たちによって] 使用されます)メッセージの約 90% を排出します)

于 2014-08-08T13:02:40.413 に答える