You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Adam Sussman <ad...@gmail.com> on 2010/07/13 21:14:49 UTC

Long term and elective durability?

Is there any way to do the following in ActiveMQ?

1) Suppose a regular topic with realtime messages passing through it.

2) We want to archive all messages that pass through the topic permanently
somewhere.

3) Any new consumer (not a durable subscriber) connecting to the topic may
elect to have their message stream start at any point within the archive of
messages all the way back to the beginning (via parameterized sequence
number, message if, timestamp, etc).  When all the archived messages have
been delivered, the consumer would continue to receive the real time
messages coming through the topic, including any that have backed up while
the archived messages were being consumed.

Note that I am not talking about a temporarily disconnected durable
subscriber here.  I am looking to have this behavior even for a new
subscriber to the topic.

Is this possible?  Are there any hooks to do something like this (for
example custom destination parameters, etc)?

What about the long term archiving?  Is it possible to break out the
persistence mechanism by destination?

Thanks,

-adam
-- 
View this message in context: http://old.nabble.com/Long-term-and-elective-durability--tp29154615p29154615.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: Long term and elective durability?

Posted by Gary Tully <ga...@gmail.com>.
I cant think of a way to achieve this out of the box via
configuration, what you are looking for is very specific.
Virtual topics will help, giving u a queue for each subscription, but
this will need to be statically configured if all consumers are to get
all messages.
However, with some tweaking via plugins, you could build what you need
using a queue that does not persist acks, such that the queue is a
persistent archive of every message and any new consumer can start at
the beginning.
You will need to do some additional work to have the start point
configurable or programmable, but with a bit of research and
prototyping it is possible. ActiveMQ is very extensible (all
operations/commands can be overridden) so it is a good place to start.

check out virtual destinations and plugins/interceptors in the online doc.

On 13 July 2010 20:14, Adam Sussman <ad...@gmail.com> wrote:
>
> Is there any way to do the following in ActiveMQ?
>
> 1) Suppose a regular topic with realtime messages passing through it.
>
> 2) We want to archive all messages that pass through the topic permanently
> somewhere.
>
> 3) Any new consumer (not a durable subscriber) connecting to the topic may
> elect to have their message stream start at any point within the archive of
> messages all the way back to the beginning (via parameterized sequence
> number, message if, timestamp, etc).  When all the archived messages have
> been delivered, the consumer would continue to receive the real time
> messages coming through the topic, including any that have backed up while
> the archived messages were being consumed.
>
> Note that I am not talking about a temporarily disconnected durable
> subscriber here.  I am looking to have this behavior even for a new
> subscriber to the topic.
>
> Is this possible?  Are there any hooks to do something like this (for
> example custom destination parameters, etc)?
>
> What about the long term archiving?  Is it possible to break out the
> persistence mechanism by destination?
>
> Thanks,
>
> -adam
> --
> View this message in context: http://old.nabble.com/Long-term-and-elective-durability--tp29154615p29154615.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>



-- 
http://blog.garytully.com

Open Source Integration
http://fusesource.com