activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From colincrist <>
Subject Re: QueueBrowser and OnMessage
Date Sun, 27 Aug 2006 15:15:39 GMT

A common misue of message queues is to treat them like a database table that
can be queried when really a queue is a transient place for data to flow
that decouples the producers and consumers. Selectors  are there to break
down the message flow into many sub-ordered streams of data that can be
handled by different consumers. Indeed, some schools of thought recommend a
single queue only contain a single type of data although I think this is a
bit restrictive myself. The reality is probably somewhere in the middle but
there is a lot to be said for the data driven approach as it avoids system
to system coupling. Another common design goal is that in a well running
system queue depths are zero - meaning that all consumers are up and working
normally, if one is down then queues build up and you can get alerts and
monitor for this.

Your application sounds like an inbox or blotter type of application and
over time with this kind of system I can think of a few issues off the top
of my head:

1. You want to have more complicated ways to filter the messages to let a
user view them. Using messaging you can end up with header property
2. You want to attach state to the message as it moves through some kind of
workflow - e.g. not read/read/accepted/rejected. 
3. Refile the message elsewhere, using the inbox analogy, into another
4. Keep a fully history of certain kinds of messages somewhere.
5. Audit trail all operations.

I don't know much about your application but I'd keep my (JMS) messaging
system to do just messaging and then hand the messages off into a good old
database for manipulation and viewing with its benefits of flexible
transactions, SQL, security, heaps of visualistion tools etc etc.

Hope this helps!



StanleyH wrote:
> hi,  my application works like an email client.  I want to use
> queuebrowser to browse all the messages on the queue/keep them on the
> server  and also be notified if a new message has arrived. queuebrowser
> does not have a OnMessage method.  is there a way I can be notified that 
> a new message has arrived on the queue and then have queuebrowser lists
> the updated queue.
> thanks 

View this message in context:
Sent from the ActiveMQ - User forum at

View raw message