activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <>
Subject Re: Advice Needed on Design
Date Fri, 12 Oct 2007 14:31:16 GMT
On 12/10/2007, Adam Sherman <> wrote:
> Good Morning All,

Welcome Adam!

> I am in the process of designing my first project using JMS. So far,
> I am using the Spring XBean support and ActiveMQ 5.0-SNAPSHOT to
> exchange some simple messages between two network nodes to get my
> feet wet and start understanding all the components.
> I am now looking for some advice on how to architect this application
> and am hoping the list can help me out! :-)
> The requirements:
> - multiple nodes sending "process this data" messages ("web node")
> - multiple nodes consuming the above messages and doing work
> ("processor node")
> - processor nodes broadcast messages containing status updates which
> need to cause things like email notifications and various other data
> updates
> Basically, I am designing a special-purpose video site where users
> upload video and it gets processed. The users need to receive a lot
> of progress information.
> How can I have a variety of "listeners" for a event-style message
> (like "processing complete") but only have one of them process the
> message? (e.g. I have a pool of consumers that send notification
> emails, another pool that updates a status page and will eventually
> add more.) My understanding of "topics" is that you can't force only
> a single subscriber to handle each message.
> Any thoughts/comments/suggestions you can provide would be very helpful.
> Thank you,

To get things going and to avoid you having to worry about how to use
the JMS API properly and so forth I'd recommend you experiment with
the Bean Integration in Camel...

it basically means you can create a messaging application without
writing any JMS code; you'd also be transport agnostic allowing you to
switch between various kinds of protocol if you need it later on..

e.g. start off writing interfaces for your remote services (such as
the send data interface)

then start with spring remoting; which lets you bind the interface to
a queue for load balancing or topic for publish subscribe; then the
server side would consume the messages etc.

Open Source SOA

View raw message