Author: buildbot
Date: Tue Nov 10 19:21:47 2015
New Revision: 972015
Log:
Production update by buildbot for activemq
Modified:
websites/production/activemq/content/cache/main.pageCache
websites/production/activemq/content/networks-of-brokers.html
Modified: websites/production/activemq/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.
Modified: websites/production/activemq/content/networks-of-brokers.html
==============================================================================
--- websites/production/activemq/content/networks-of-brokers.html (original)
+++ websites/production/activemq/content/networks-of-brokers.html Tue Nov 10
19:21:47 2015
@@ -177,19 +177,19 @@
</staticallyIncludedDestinations>
</networkConnector></pre>
</div></div><p>If configured like this, broker will try to listen for new
consumers on <code>ActiveMQ.Advisory.Consumer.NO_DESTINATION</code>, which will
never have messages so it will be protected from information on remote broker
consumers.</p><h3
id="NetworksofBrokers-DynamicnetworksandVirtualDestinations(Newfor5.13.0)">Dynamic
networks and Virtual Destinations (New for 5.13.0)</h3><p>As described above,
a network of brokers can be configured to only send messages to a remote broker
when there's a consumer on an included destination.  However, let's
consider some cases of how dynamic flow occurs when <a shape="rect"
href="virtual-destinations.html">Virtual Destinations</a> are in
use.</p><h4
id="NetworksofBrokers-VirtualDestinationconsumersandCompositeDestinations">Virtual
Destination consumers and Composite Destinations</h4><p>Here is an example of
two brokers networked together.  The local broker contains the network
connector configured with a <code>dy
namicallyIncludedDestination</code> and the remote broker is configured
with a CompositeTopic:</p><div class="code panel pdl" style="border-width:
1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width:
1px;"><b>Local Broker</b></div><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><networkConnector uri="static:(tcp://host)">
- <dynamicallyIncludedDestinations>
- <topic physicalName="include.test.bar"/>
- </dynamicallyIncludedDestinations>
+<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><networkConnector uri="static:(tcp://host)">
+ <dynamicallyIncludedDestinations>
+ <topic physicalName="include.test.bar"/>
+ </dynamicallyIncludedDestinations>
</networkConnector></pre>
</div></div><div class="code panel pdl" style="border-width: 1px;"><div
class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Remote
Broker</b></div><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><compositeTopic name="include.test.bar"
forwardOnly="false">
+<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><compositeTopic name="include.test.bar"
forwardOnly="false">
<forwardTo>
<queue physicalName="include.test.bar.forward" />
</forwardTo>
</compositeTopic ></pre>
-</div></div><p><br clear="none">In this example, let's consider a single
consumer on the remote broker on the queue include.test.bar.forward.  If a
message is sent directly to the remote broker on the
topic <code>include.test.bar, it</code> will be forwarded to the
queue <code>include.test.bar.forward </code>and the consumer will
receive it.  However, if a message is published to the same topic on the
local broker, this message will not be forwarded to the remote
broker.</p><p>The message is not forwarded because a consumer on
the <code>queue include.test.bar.forward</code> would not be
detected as part of
the <code>dynamicallyIncludedDestinations</code> list so messages
would not be forwarded to the remote broker unless there was a consumer on the
original topic as well, in this case include.test.bar.  This can be fixed
by configuring the broker to listen for Virtual Destination Subscriptions.
 </p><p>First, we need t
o configure the broker to send advisory messages when consumers come online
onto a destination that matches a Virtual Destination.  In this case, a
match is determined by the use of a Destination Filter will determines if a a
destination forwards to another destination.  The configuration on the
remote broker should be updated to set the property
<code>useVirtualDestSubs</code> to true to enable this.</p><p> </p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeHeader
panelHeader pdl" style="border-bottom-width: 1px;"><b>Remote
Broker</b></div><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><?xml version="1.0" encoding="UTF-8"?>
+</div></div><p>In this example, let's consider a single consumer on the remote
broker on the queue include.test.bar.forward.  If a message is sent
directly to the remote broker on the topic <code>include.test.bar,
it</code> will be forwarded to the
queue <code>include.test.bar.forward </code>and the consumer will
receive it.  However, if a message is published to the same topic on the
local broker, this message will not be forwarded to the remote
broker.</p><p>The message is not forwarded because a consumer on
the <code>queue include.test.bar.forward</code> would not be
detected as part of
the <code>dynamicallyIncludedDestinations</code> list so messages
would not be forwarded to the remote broker unless there was a consumer on the
original topic as well, in this case include.test.bar.  This can be fixed
by configuring the broker to listen for Virtual Destination Subscriptions.
 </p><p>First, we need to configure the b
roker to send advisory messages when consumers come online onto a destination
that matches a Virtual Destination.  In this case, a match is determined
by the use of a Destination Filter will determines if a a destination forwards
to another destination.  The configuration on the remote broker should be
updated to set the property <code>useVirtualDestSubs</code> to true to enable
this.</p><div class="code panel pdl" style="border-width: 1px;"><div
class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Remote
Broker</b></div><div class="codeContent panelContent pdl">
+<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://activemq.org/config/1.0">
@@ -199,20 +199,20 @@
</beans>
</pre>
-</div></div><p><br clear="none">Second, we need to configure the network
connector to listen for the new advisory messages:</p><p> </p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeHeader
panelHeader pdl" style="border-bottom-width: 1px;"><b>Local
Broker</b></div><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><networkConnector uri="static:(tcp://host)"
useVirtualDestSubs="true">
+</div></div><p><br clear="none">Second, we need to configure the network
connector to listen for the new advisory messages:</p><div class="code panel
pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl"
style="border-bottom-width: 1px;"><b>Local Broker</b></div><div
class="codeContent panelContent pdl">
+<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><networkConnector uri="static:(tcp://host)"
useVirtualDestSubs="true">
<dynamicallyIncludedDestinations>
<topic physicalName="include.test.bar"/>
</dynamicallyIncludedDestinations>
</networkConnector></pre>
-</div></div><p><br clear="none">Now, if a consumer comes online for the
queue <code>include.test.bar.forward</code> on the remote broker, the
local broker will know to forward messages that are sent to the
topic <code>include.test.bar</code></p><h4
id="NetworksofBrokers-VirtualDestinationconsumersondestinationCreation">Virtual
Destination consumers on destination Creation</h4><p>Now let's consider the use
case above where there is the same composite topic but no consumers on the
queue.<br clear="none"> </p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeHeader panelHeader pdl"
style="border-bottom-width: 1px;"><b>Remote Broker</b></div><div
class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><compositeTopic name="include.test.bar"
forwardOnly="false">
+</div></div><p>Now, if a consumer comes online for the
queue <code>include.test.bar.forward</code> on the remote broker, the
local broker will know to forward messages that are sent to the
topic <code>include.test.bar</code></p><h4
id="NetworksofBrokers-VirtualDestinationconsumersondestinationCreation">Virtual
Destination consumers on destination Creation</h4><p>Now let's consider the use
case above where there is the same composite topic but no consumers on the
queue.<br clear="none"> </p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeHeader panelHeader pdl"
style="border-bottom-width: 1px;"><b>Remote Broker</b></div><div
class="codeContent panelContent pdl">
+<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><compositeTopic name="include.test.bar"
forwardOnly="false">
<forwardTo>
<queue physicalName="include.test.bar.forward" />
</forwardTo>
</compositeTopic ></pre>
-</div></div><p><br clear="none">There is a composite Topic configured on the
remote broker and the local broker is networked to it.  Even though we've
enabled useVirtualDestSubs, messages wouldn't be forwarded to the remote broker
unless a consumer comes online to the forwarded queue.  This would cause
messages to be dropped since they are sent to a topic.  Sometimes it is
desirable to have these messages forwarded based on the existence of the
virtual destination.  This only applies in the Queue case. For topics,
messages should only be forwarded if there is a consumer or durable
subscription.</p><p> </p><div class="code panel pdl" style="border-width:
1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width:
1px;"><b>Local Broker</b></div><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><?xml version="1.0" encoding="UTF-8"?>
+</div></div><p>There is a composite Topic configured on the remote broker and
the local broker is networked to it.  Even though we've enabled
useVirtualDestSubs, messages wouldn't be forwarded to the remote broker unless
a consumer comes online to the forwarded queue.  This would cause messages
to be dropped since they are sent to a topic.  Sometimes it is desirable
to have these messages forwarded based on the existence of the virtual
destination.  This only applies in the Queue case. For topics, messages
should only be forwarded if there is a consumer or durable
subscription.</p><div class="code panel pdl" style="border-width: 1px;"><div
class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Local
Broker</b></div><div class="codeContent panelContent pdl">
+<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://activemq.org/config/1.0">
@@ -220,16 +220,15 @@
.....
</broker>
-</beans>
-</pre>
-</div></div><p><br clear="none">With this configuration, when the
Queue include.test.bar.forward is created, a Virtual Destination consumer
advisory will be sent to the local broker so that it knows to forward messages
based on the existence of the CompositeTopic and Queue existing.</p><h4
id="NetworksofBrokers-VirtualDestinationconsumersandVirtualTopics">Virtual
Destination consumers and Virtual Topics </h4><p>The above examples show
how to configure a Composite destination but a Virtual Topic will also work.
 In the example below, a consumer on a Queue for a Virtual Topic will now
cause demand and messages will be sent across a network.</p><p> </p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeHeader
panelHeader pdl" style="border-bottom-width: 1px;"><b>Local
Broker</b></div><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><networkConnector uri="static:(tcp://host)">
+</beans></pre>
+</div></div><p>With this configuration, when the
Queue include.test.bar.forward is created, a Virtual Destination consumer
advisory will be sent to the local broker so that it knows to forward messages
based on the existence of the CompositeTopic and Queue existing.</p><h4
id="NetworksofBrokers-VirtualDestinationconsumersandVirtualTopics">Virtual
Destination consumers and Virtual Topics </h4><p>The above examples show
how to configure a Composite destination but a Virtual Topic will also work.
 In the example below, a consumer on a Queue for a Virtual Topic will now
cause demand and messages will be sent across a network.</p><p> </p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeHeader
panelHeader pdl" style="border-bottom-width: 1px;"><b>Local
Broker</b></div><div class="codeContent panelContent pdl">
+<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><networkConnector uri="static:(tcp://host)">
<dynamicallyIncludedDestinations>
<topic physicalName="VirtualTopic.>"/>
</dynamicallyIncludedDestinations>
</networkConnector></pre>
</div></div><div class="code panel pdl" style="border-width: 1px;"><div
class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>Remote
Broker</b></div><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><?xml version="1.0" encoding="UTF-8"?>
+<pre class="brush: xml; gutter: false; theme: Default"
style="font-size:12px;"><?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://activemq.org/config/1.0">