On 4/10/07, tnine <[EMAIL PROTECTED]> wrote:

Hi All,
  I'll be writing a process that uses parallel grid processing to process
message groups.  I'm new to Active MQ and could use some help in finding
documentation or examples.

I'll be running in the following environment
Java 1.6
JBoss 4
Active MQ 4.1.1
RHEL4

I know I will be performing the following operations.

1. Create a text message with the following format.  [company-name]-[ISO
Date]
2. Push all text messages into this group
3. When I'm done producing all of the messages, I'll perform the
message.setIntProperty("JMSXGroupSeq", 0); to close the group.

I have have the following questions.

Producer/Consumer

1. Is it possible to insert multiple messages into the queue in a single XA
transaction?

Yes - whether using JMS or XA transactions, you can send or receive
multiple messages; its up to you when you do the commit


 If so is there an example?  Since the input is a large flat
file, I want either all messages to be inserted or none.

How large is the file?


2. Is there a way for me to detect on the MDB side when the last message is
sent? Can I simply perform the message.getIntProperty("JMSXGroupSeq") and
search for the value 0 to find the last message?

Sure. Or just add your own header to indicate the last message if you prefer


3. I have 2 queues, one input queue, and one output queue.  Both queues need
to be processed in the exact same order.  As the MDB reads from the input
queue, can I put the same JMSXGroupSeq number into the output queue message
and still have the same ordering semantics without screwing up the Group
processing in Active MQ?

The 2 queues are processed separately by different consumer groups;
but sure order would be guarrenteed if you use the same JMSGroupID


Monitoring

I want to write a simple webapp that shows the percentage of message in the
queues.  Is it possible to read the groups, and for each group show the
messages on the queue?

Not efficiently; you could write your own Interceptor to do just that

http://activemq.apache.org/interceptors.html

but you could inefficiently do it by just browsing the queue via the
QueueBrowser on JMS to figure out the numbers etc

--

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

Reply via email to