1

dynamicallyIncludedDestinationsActiveMQの構成がどのように処理するかなどを理解しようとしています。

例えば。次の構成の抜粋を検討してください。

<amq:broker id="broker" ... advisorySupport="false"> 
    <amq:networkConnectors>
        <amq:networkConnector name="connectorA" duplex="true"
            conduitSubscriptions="false" uri="${networkconnectorURL}">
                <amq:dynamicallyIncludedDestinations>
                    <amq:queue physicalName=">"/>
                 </amq:dynamicallyIncludedDestinations>
            </amq:networkConnector>

            <amq:networkConnector name="connectorB" duplex="true" 
             conduitSubscriptions="true" uri="${networkconnectorURL}">
                <amq:staticallyIncludedDestinations>
                    <amq:topic physicalName="topicA" />
                    <amq:topic physicalName="topicB" />
                </amq:staticallyIncludedDestinations>
            </amq:networkConnector>
    </amq:networkConnectors>

このシナリオでは:

  • 与えられたconnectorA定義はdynamicallyIncludedDestinations、明示的に定義されていないものを自動的に除外しますか?つまりconnectorA、キューではなく、トピックに送信されたメッセージを受信しますか?

この構成は宣言しますadvisorySupport='false'が、そのドキュメントには次のように記載されています。

AdvisorySupportブローカープロパティが無効になっている場合、ネットワークは期待どおりに機能しません(新しいコンシューマーに動的に応答できません)。AdvisorySupportが無効になっている場合は、完全に静的に構成されたネットワークが唯一のオプションです。次のセクションでそれについてもっと読む

したがって、それは、<amq:queue physicalName=">"/>宣言されたconnectorAが、クラスター全体ではなく、それ自体のブローカー内のキューでのみメッセージを受信することを意味しますか?

そうでない場合(それは私が見ている結果と一致していないように見えるので)、この組み合わせを解釈する正しい方法は何ですか?

  • 繰り返しますが、ブローカーが持っていることを考えると、これは私がセクションをadvisorySupport='false'追加することを妨げますか?dynamicallyIncludedDestinationsconnectorB

  • にメッセージを送信する場合、メッセージをjms:topic:topicC受信するのは、メッセージの送信元からブローカーにサブスクライブしているコンシューマーだけであると言うのは正しいですか?

4

1 に答える 1

2

アドバイザリサポートをオフにすると、ブローカーには宛先のメッセージ需要に関する情報を伝達する手段がないため、動的ネットワークを作成するすべての機能をオフにします。したがって、この場合、connectorAはあまり意味がありません。

于 2012-04-04T09:03:40.597 に答える