169.12.2. JMS でのリクエスト応答キューと排他的な応答キューの使用


Camel 2.9 で利用可能

前述の例では、Camel は「bar」という名前の固定応答キューが共有されているため、JMSSelector を使用して、想定するリプライメッセージのみを消費します。ただし、JMS 選択速度は遅いため、これを行う欠点があります。また、リプライキューのコンシューマーは、新しい JMS セレクター ID で更新するために遅くなります。実際、receiveTimeout オプションがタイムアウトした場合にのみ更新されます。デフォルトは 1 秒です。そのため、応答メッセージの検出に約 1 秒の時間がかかる可能性があります。一方、固定応答キューが Camel 応答コンシューマーに排他的である場合、JMS セレクターの使用を回避できるため、より高性能になります。実際、一時キューを使用するのと同じ高速です。Camel 2.9 以降では、ReplyToType オプションが導入されました。これは、以下の例のように応答キューが排他 であることを Camel に伝えるように設定できるようになりました。

from(xxx)
.inOut().to("activemq:queue:foo?replyTo=bar&replyToType=Exclusive")
.to(yyy)

キューは、各エンドポイントおよびすべてのエンドポイントに対して排他的である必要があることに注意してください。そのため、2 つのルートがある場合、それぞれのルートには次の例に示すように一意の応答キューが必要です。

from(xxx)
.inOut().to("activemq:queue:foo?replyTo=bar&replyToType=Exclusive")
.to(yyy)

from(aaa)
.inOut().to("activemq:queue:order?replyTo=order.reply&replyToType=Exclusive")
.to(bbb)

クラスター環境で実行する場合も同様です。次に、クラスターの各ノードは一意の応答キュー名を使用する必要があります。そうしないと、クラスターの各ノードは別のノードの応答として意図されたメッセージを取得する可能性があります。クラスター環境では、代わりに共有応答キューを使用することが推奨されます。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る