You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by qbeukes <qb...@add.za.net> on 2008/07/21 10:46:10 UTC
Ordering of Messages
Hey,
I want a consumer that posts messages in the EXACT order they were received
to a single consumer.
It's very important that they are received and processed one at a time, in
the exact order they were committed.
In the admin interface, under topics I have:
ActiveMQ.Advisory.Connection 0 2511 0 Send To Delete
ActiveMQ.Advisory.Producer.Queue.JMT.REQUESTS 0 2508 0 Send To Delete
ActiveMQ.Advisory.Topic 0 1257 0 Send To Delete
ActiveMQ.Agent 1 0 0 Send To Delete
ActiveMQ.Advisory.Consumer.Topic.ActiveMQ.Agent 0 1 0 Send To Delete
ActiveMQ.Advisory.Queue 0 2509 0 Send To Delete
ActiveMQ.Advisory.Consumer.Queue.JMT.REQUESTS 0 1 0 Send To Delete
ActiveMQ.Advisory.Consumer.Queue.example.A 0 1 0 Send To Delete
Then in the config I have:
<destinationPolicy>
<policyMap>
<policyEntries>
<policyEntry topic="JMT.REQUESTS" producerFlowControl="false"
memoryLimit="128mb">
<dispatchPolicy>
<strictOrderDispatchPolicy/>
</dispatchPolicy>
<subscriptionRecoveryPolicy>
<lastImageSubscriptionRecoveryPolicy/>
</subscriptionRecoveryPolicy>
</policyEntry>
</policyEntries>
</policyMap>
</destinationPolicy>
Would this do it for the JMT.REQUESTS queue? Is my configuration options
correct, and the topic="JMT.REQUEST" referring to the correct queue?
Thanks,
Q
--
View this message in context: http://www.nabble.com/Ordering-of-Messages-tp18564477p18564477.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Re: Ordering of Messages
Posted by James Strachan <ja...@gmail.com>.
2008/7/21 qbeukes <qb...@add.za.net>:
>
> Hey,
>
> I want a consumer that posts messages in the EXACT order they were received
> to a single consumer.
>
> It's very important that they are received and processed one at a time, in
> the exact order they were committed.
>
> In the admin interface, under topics I have:
> ActiveMQ.Advisory.Connection 0 2511 0 Send To Delete
> ActiveMQ.Advisory.Producer.Queue.JMT.REQUESTS 0 2508 0 Send To Delete
> ActiveMQ.Advisory.Topic 0 1257 0 Send To Delete
> ActiveMQ.Agent 1 0 0 Send To Delete
> ActiveMQ.Advisory.Consumer.Topic.ActiveMQ.Agent 0 1 0 Send To Delete
> ActiveMQ.Advisory.Queue 0 2509 0 Send To Delete
> ActiveMQ.Advisory.Consumer.Queue.JMT.REQUESTS 0 1 0 Send To Delete
> ActiveMQ.Advisory.Consumer.Queue.example.A 0 1 0 Send To Delete
>
> Then in the config I have:
> <destinationPolicy>
> <policyMap>
> <policyEntries>
>
> <policyEntry topic="JMT.REQUESTS" producerFlowControl="false"
> memoryLimit="128mb">
> <dispatchPolicy>
> <strictOrderDispatchPolicy/>
> </dispatchPolicy>
> <subscriptionRecoveryPolicy>
> <lastImageSubscriptionRecoveryPolicy/>
> </subscriptionRecoveryPolicy>
> </policyEntry>
>
> </policyEntries>
> </policyMap>
> </destinationPolicy>
>
> Would this do it for the JMT.REQUESTS queue?
The above defines a policy for a topic, not a queue :)
> Is my configuration options
> correct, and the topic="JMT.REQUEST" referring to the correct queue?
The out of the box configuration for queues should do what you require
- provided you use only a single consumer - or you use exclusive
consumers or message groups...
http://activemq.apache.org/how-do-i-preserve-order-of-messages.html
--
James
-------
http://macstrac.blogspot.com/
Open Source Integration
http://open.iona.com