私はメッセージをexchange
からキューにルーティングする必要があるのでしょうかと疑問に思っています。単純なキュー名を使ってメッセージをルーティングすることはできません。また、複数のキューにパブリッシュする場合は、複数のキュー名を使用できます。誰かが実際にルーティングキーを必要とするシナリオを指摘できますか、キュー名では十分ではありません。rabbitmqにルーティングキーが必要なのはなぜですか
0
A
答えて
1
交換にはいくつかの種類があります。ファンアウト交換機はルーティングキーを無視し、すべてのキューにメッセージを送信します。しかし、他のすべての交換タイプは、ルーティングキーを使用して、ある場合にはどのキューがメッセージを受信するかを決定します。
tutorials on the RabbitMQ websiteには、さまざまな交換タイプが有用で、ルーティングキーが関連するいくつかの用途が記載されています。
たとえば、は、トピック交換を使用して、各メッセージのログレベルに応じてログメッセージをさまざまなキューにルーティングする方法を示します。
複数のキューを対象にする場合は、それらをファンアウト交換にバインドし、その交換をパブリッシャで使用する必要があります。
パブリッシャに複数のキュー名を指定することはできません。 AMQPでは、キューにメッセージをパブリッシュせず、エクスチェンジにメッセージをパブリッシュします。関連するキューを決定するのはExchangeの責任です。メッセージが全くキューに送られずにドロップされた可能性があります。
関連する問題
- 1. コードファーストクラスにはナビゲーションプロパティが必要なのはなぜですか?
- 2. このコードにklassが必要なのはなぜですか?
- 3. ピッカーにデータソースが必要なのはなぜですか?
- 4. MailDefinitionクラスにSystem.Web.UI.Controlが必要なのはなぜですか?
- 5. immutable.jsクラスに "new"が必要ないのはなぜですか?
- 6. フィボナッチヒープにカスケードカットが必要なのはなぜですか?
- 7. Android SDKにJDKが必要なのはなぜですか?
- 8. Swiftに「new」キーワードが必要ないのはなぜですか?
- 9. Enumerator.newに「yielder」オブジェクトが必要なのはなぜですか?
- 10. sendTextMessageにREAD_PHONE_STATE権限が必要なのはなぜですか?
- 11. reactjsにbrowser.min.jsが必要なのはなぜですか?
- 12. WebにHTTPが必要なのはなぜですか?
- 13. レールにJavaScriptランタイムが必要なのはなぜですか?
- 14. lsyncdにxnuが必要なのはなぜですか?
- 15. Scalaにシンボルが必要なのはなぜですか?
- 16. Assembly.GetTypes()に参照が必要なのはなぜですか?
- 17. 公開ページフィードにアクセストークンが必要なのはなぜですか?
- 18. ここにセミコロンが必要なのはなぜですか?
- 19. 可変オブジェクトにダブルポインタが必要なのはなぜですか?
- 20. Gradleにsettings.gradleファイルが必要なのはなぜですか?
- 21. CustomFieldSerializerに静的メソッドが必要なのはなぜですか?
- 22. GridViewにBaseAdapterが必要なのはなぜですか?
- 23. グローバルconst charには "静的"が必要ですが、ブールには必要ないのはなぜですか?
- 24. ここでエンディアンが必要なのはなぜですか?
- 25. Dockerでベースイメージが必要なのはなぜですか?
- 26. Railsでattr_accessorが必要なのはなぜですか?
- 27. JavaでString [] argsが必要なのはなぜですか?
- 28. lexでルールが必要なのはなぜですか?
- 29. ここでtypenameが必要なのはなぜですか?
- 30. ここでキャストが必要なのはなぜですか?
ok。交換とキューの間にルーティングキーが必要なのはなぜですか。ファンアウト交換を使用して、すべてのキューにメッセージを送信できます。同様に、特定のキューまたは複数のキューに送信する場合。キュー自体の名前を使用することはできません。なぜ特殊な "ルーティングキー"の概念が必要なのですか? – Naresh
キュー名をルーティングキーに入れて、デフォルトのエクスチェンジ(空の文字列で指定されたechange)に公開することができます。メッセージは目的のキューに入れられます。ルーティングキーとさまざまなタイプのエクスチェンジは、メッセージをキューにルーティングする方法の柔軟性を高めます。また、パブリッシャとコンシューマをさらに切り離すこともできます。もう1つのメリットは、ルーティング情報をパブリッシャからそれが所属するバスに移動することです。 –