activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <>
Subject Re: ActiveMQ 4.0 RC1 - durable topic
Date Mon, 10 Apr 2006 17:39:42 GMT
On 4/10/06, ErinO <> wrote:
> Hi, James:
> Thanks for the explanation. The configuration flag will do for my case.
> But I thought the purpose for the durable topic is to remove the order
> dependency between the producer and the consumer.

To loosely couple producers and consumers yes. But for topics if there
are no consumers active at the time a producer sends a message then
usually its discarded. Queues on the other hand never have messages

> Also for a message to be
> durable means it shouldn't get lost in any circumstances, if someone didn't
> turn on the configuration flag you are going to add, he could lose messages
> in this specific case.
> In my opinion, it is better to fix the issue than just adding a
> configuration flag.

One of the points of decoupling producers and consumers is that the
producer doesn't know or care if there are any consumers; if there are
no consumers for a message we should not pay the cost of there being
consumers by default.

But there are many different use cases in messaging; if you want to
always persist a message to disk irrespective of if there are any
available consumers to ever see it - then by all means we'll support
that with a trivial flag.

BTW by default if you create a new subscriber after messages are sent,
they are not usually delivered to the subscriber anyway (whether they
are written to the database or not). i.e. creating a subscriber
(durable or transient) is normally the point in time to start
dispatching messages to the subscriber.

Incidentally we have extended the usual MOM/JMS  model to allow
retroactive subscriptions...


View raw message