You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by d j <ji...@yahoo.com> on 2006/03/23 23:07:31 UTC

jms routing

Hi there,
I'm new to activeMQ, but have been working with commercial JMS product for
long. I'm looking at if the activeMQ provides the routing on queue service
and how to configure them. Let say, I have three brokers, A, B and C. There
are direct connections between A and B, and B and C, but no connection
between A and C. A and C brokers are sitting in different networks. The
message producer of queue "someQueue" has consumer at C broker. There is no
local queue "someQueu" at local in A. How would I configure three brokers to
do the routing or forwarding? The Sonic MQ is using directory to do the
routing. Does ActiveMQ have the similar service?

Thanks,
--
View this message in context: http://www.nabble.com/jms-routing-t1333152.html#a3561517
Sent from the ActiveMQ - User forum at Nabble.com.


Re: jms routing

Posted by James Strachan <ja...@gmail.com>.
On 3/24/06, d j <ji...@yahoo.com> wrote:
>
> Just a little further., Let's imagine a grid computing network for instance.
> All gridlet has same queue, but identified by fqdn (full qualified domain
> name). A publishing to an queue will publish to a queue with domain name.
> The broker on the edge will route the message to the right destination. In
> that sense of routing, it will really make the activeMQ a much bigger
> player. Otherwise, it will be used in very limited system and stays nitch.

I agree that broker-specfic queues are useful, but they are not
strictly required to be a non-nitch messaging system. Using demand
based forwarding we can reproduce pretty much the same effect of
certain queues being hosted on certain brokers by just being careful
on what brokers we run JMS consumers on and then let the demand based
forwarding mimick the same topology of broker-specific queues.

--

James
-------
http://radio.weblogs.com/0112098/

Re: jms routing

Posted by d j <ji...@yahoo.com>.
Just a little further., Let's imagine a grid computing network for instance.
All gridlet has same queue, but identified by fqdn (full qualified domain
name). A publishing to an queue will publish to a queue with domain name.
The broker on the edge will route the message to the right destination. In
that sense of routing, it will really make the activeMQ a much bigger
player. Otherwise, it will be used in very limited system and stays nitch.
--
View this message in context: http://www.nabble.com/jms-routing-t1333152.html#a3578780
Sent from the ActiveMQ - User forum at Nabble.com.


Re: jms routing

Posted by James Strachan <ja...@gmail.com>.
Agreed - yes we should add the ability to have 'remote destinations'
such that we publish messages directly to a remote broker, rather than
the current broker you are connected on.

I've raised a JIRA for this
http://jira.activemq.org/jira/browse/AMQ-658

James

On 3/24/06, d j <ji...@yahoo.com> wrote:
>
> Hi James,
> Yes. Whether is single broker of clustered broker is not important. Same
> queue name can be used at any broker, but when a publisher wants to publish
> to a queue, it wants to publish on the queue at specific broker, which is
> identified by network domain or realm. Let's say a myQueue can be
> myQueue.brokerC. A message sinding at brokerA to myQueue will be routed to
> myQueue.brokerC based on domain name or realm. It's something like
> multi-domain routing. And it might make the deployment much easier when
> deploying multiple brokers at different networks. I don't know much about
> how the JMS broker works. What i said might be wrong.
> Thanks.
> --
> View this message in context: http://www.nabble.com/jms-routing-t1333152.html#a3577310
> Sent from the ActiveMQ - User forum at Nabble.com.
>
>


--

James
-------
http://radio.weblogs.com/0112098/

Re: jms routing

Posted by d j <ji...@yahoo.com>.
Hi James,
Yes. Whether is single broker of clustered broker is not important. Same
queue name can be used at any broker, but when a publisher wants to publish
to a queue, it wants to publish on the queue at specific broker, which is
identified by network domain or realm. Let's say a myQueue can be
myQueue.brokerC. A message sinding at brokerA to myQueue will be routed to
myQueue.brokerC based on domain name or realm. It's something like
multi-domain routing. And it might make the deployment much easier when
deploying multiple brokers at different networks. I don't know much about
how the JMS broker works. What i said might be wrong.
Thanks.
--
View this message in context: http://www.nabble.com/jms-routing-t1333152.html#a3577310
Sent from the ActiveMQ - User forum at Nabble.com.


Re: jms routing

Posted by James Strachan <ja...@gmail.com>.
On 3/24/06, d j <ji...@yahoo.com> wrote:
>
> Thanks, James,
> If the activeMQ could support network domain based routing, it would be
> great.

What do you mean by that? You mean sending a message to a queue which
only exists on a single broker (e.g. my.queue@brokerC)

--

James
-------
http://radio.weblogs.com/0112098/

Re: jms routing

Posted by d j <ji...@yahoo.com>.
Thanks, James,
If the activeMQ could support network domain based routing, it would be
great.
--
View this message in context: http://www.nabble.com/jms-routing-t1333152.html#a3573788
Sent from the ActiveMQ - User forum at Nabble.com.


Re: jms routing

Posted by James Strachan <ja...@gmail.com>.
On 3/23/06, d j <ji...@yahoo.com> wrote:
>
> Hi there,
> I'm new to activeMQ, but have been working with commercial JMS product for
> long. I'm looking at if the activeMQ provides the routing on queue service
> and how to configure them. Let say, I have three brokers, A, B and C. There
> are direct connections between A and B, and B and C, but no connection
> between A and C. A and C brokers are sitting in different networks. The
> message producer of queue "someQueue" has consumer at C broker. There is no
> local queue "someQueu" at local in A. How would I configure three brokers to
> do the routing or forwarding? The Sonic MQ is using directory to do the
> routing. Does ActiveMQ have the similar service?

Currently no - ActiveMQ often uses DemandBasedForwarding; so the
demand of consumers on C will lead to B getting subscription
information from C, which will lead to B subscribing to A. In the
DemandForwardingBridge we basically forward messages to where there is
demand (i.e. an active consumer). For queues we choose 1 possible
consumer to send it to; for topics we send to all suitable consumers.

--

James
-------
http://radio.weblogs.com/0112098/