activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jumbro <>
Subject Re: AMQ persistence not working for me
Date Thu, 18 Mar 2010 18:58:44 GMT

Aha!!! This finally makes it clear...

I had durable subscription working a week or two ago. But I had never tested
the "persistence" piece of that, i.e. taking the broker down with unconsumed
messages on a topic which has a registered durable subscriber. I just did
that test and see that it works!

I researched persistence vs. durable subscription a couple weeks back, and
thought I fully understood the distinction. The missing piece for me was
this "persistence test" which I see now is configured slightly differently
depending on whether you're working with topics (durable subscribers) or
queues (persistent producers).

Thank you very much for the education. Hopefully this thread will save
someone else some time and frustration!

bsnyder wrote:
> On Thu, Mar 18, 2010 at 12:15 PM, jumbro <> wrote:
>> I just tested persistence using a QUEUE and... it works!
>> So my question is: do topics offer this same functionality? If not, then
>> why?
>> If topics do support persistence, then I'm still missing something..
> Topics support durability which is slightly different. But with
> topics, messages will only be persisted if a durable subscription
> exists on the topic. Below is a description of durability vs.
> persistence that I wrote for chapter 2
> of the forthcoming ActiveMQ In Action book:
> Two points within JMS that are often confused are message durability
> and message persistence. Though they are similar, there are some
> semantic differences but each has its specific purpose. Message
> durability can only be achieved with the pub/sub domain. When clients
> connect to a topic, they can do so using a durable or a non-durable
> subscription. Consider the differences between the two:
> Durable Subscription - A durable subscription is infinite. It is
> registered with the topic to tell the JMS provider to preserve the
> subscription state in the event that the subscriber disconnects. If a
> durable subscriber disconnects, the JMS provider will hold all
> messages until that subscriber connects again.
> Non-Durable Subscription - A non-durable subscription is finite. It's
> subscription state is not preserved by the JMS provider in the event
> that the subscriber disconnects. If a subscriber disconnects, it
> misses all messages during the disconnection period and the JMS
> provider will not hold them.
> Message persistence is independent of the message domain. Message
> persistence is a quality of service property used to indicate the JMS
> application's ability to handle missing messages in the event of a JMS
> provider failure.
> Bruce
> -- 
> perl -e 'print
> unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
> );'
> ActiveMQ in Action:
> Blog:
> Twitter:

View this message in context:
Sent from the ActiveMQ - User mailing list archive at

View raw message