2017-10-26 11 views
0

サーバAはトピックsource/topicにデータを公開し、2人の恒久サブスクライバsub-bsub-cは、このトピックを聞くように設定されています。購読者sub-bsub-cは同じデータを受信します。Hornetq Core Bridge - 複数のコンシューマ

サーバBにsub-bチャネルからのメッセージを公開しsub-cチャネルからそれらはコアブリッジの代わりにJMSを使用することを示唆しているHorentq documentation 1として

サーバCにするために、複数のコアブリッジを使用してHornetQはで設定する方法はあります可能であれば橋。

可能な場合は、常にコアブリッジを使用することをお勧めします。

bridgeTypeスキーマ定義は、JMSブリッジBean定義の場合のようにサブスクライバ名の使用をサポートしていないようです。

私が思いついた解決策はJMSを使用することですが、以前にこの問題を抱えていた人がいるかと思いましたが、これについてあなたの考えを分かち合いたいですか?

答えて

0

JMSトピック(すなわち、source/topic)は、単にブローカ内でアドレスとして表されます。ブローカでは、JMSサブスクリプション(sub-bおよびsub-c)が、関連するアドレス(この場合はsource/topic)に関連付けられたキューとして表されます。キューの内部名は、JMSサブスクライバの詳細の組み合わせ(クライアントID、サブスクリプション名など)です。メッセージがJMSトピックに送信されると、ブローカーはそのメッセージへの参照を各サブスクリプションにルーティングし、すべてのサブスクリプションがすべてのメッセージを取得するようにします(セレクタが一致すると仮定します)。

コアブリッジは、キューに到着したメッセージをリッスンし、そのメッセージをローカルまたはリモートブローカのいずれかのアドレスに転送します。

場合によっては、JMSサブスクリプションのキューをリッスンし、そのメッセージを選択したリモートブローカに転送するブリッジを作成できます。

関連する問題