I am trying to build a hub and spoke topology where most of the producers
exists on the spokes and publish information onto topics which may be
consumed by various services living in the hub to be determined later. I
have done this before with Tibco's EMS using bridges, but for ActiveMQ
Composite Destinations seemed to fit the bill.

    So, I make a very small test involving a hub with two spokes A and B
with the composite destination defined on the HUB.  I put it on the hub
because I do not want to touch each spoke anytime a service service is add. 
(note I mean service as in new functionality not a new instance of an
existing service)  I used a compositeTopic called GLOBAL.FOO which forwards
to a queue called TEST.FOO.  With my test service running on the hub I could
publish directly to GLOBAL.FOO on the hub and receive messages.  When I put
my producer on spoke A my service not longer received the messages.  But,
once I created a consumer on spoke B my service started receiving messages.

    The best I can tell, create a consumer on a destination that a composite
topic forwards to does not translate as a consumer on the topic, thus the
messages is not forwarded between brokers, though it seems to me that is
should. I do not want to create fake services just to make the consumerCount
of the composite topics non zero, just because it seems very hack-ish.  

   Is there some detail or setting I am missing.  Perhaps there is a
fundamentally better way to do this?

   I am using ActiveMQ 5.10 without a container for each spoke and inside of
JBoss 4.2.2 for the Hub.  All of this is running on Mac OS X running Java
1.5.0_13.  



-- 
View this message in context: 
http://www.nabble.com/Composite-Destinations-and-Hub-Spoke-tp17676597s2354p17676597.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to