activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <james.strac...@gmail.com>
Subject Re: Consuming a group of messages in a single transaction
Date Fri, 28 Jul 2006 06:59:52 GMT
On 7/28/06, nlif <naaman@dbnet.co.il> wrote:
>
> Thanks, Hiram.
>
> I guess I need to take a step back then, and restate my question in a more
> generalized form: how is it possible in a JMS-based architecture to
> send/receive several seperate items, while ensuring atomicy of the group?
> That is - it is ensured that ALL items of the group are received, and by the
> SAME consumer.
>
> At first, I thought using JMS transactions (both on the producer and on the
> consumer side) will suffice, but then I realized in a cluster (or even a
> multi-threaded single-node consumer) the group might get scattered among
> several consumers.
>
> ActiveMQ MessageGroups then came to the rescue - I am using an AMQ group, as
> one would use a transaction, to ensure all items are delivered to the same
> consumer (and the consumer will commit only after it has received all items
> in the group).
>
> However, now with the need to pass very large binary files, for which I must
> use streams, it seems I am running out of options. Maybe it is time to
> rethink the whole concept... so, is there another architecture for such a
> requirement? Seems to me this is somewhat of a generic problem for any
> messaging-based archiecture, and  I would think there is some
> "design-pattern" solution for it. Is there?

You could always make the large files available someplace via a URI
and send them out of band then use JMS transactions as you were doing
before but pass URIs to the massive files rather than the files
themselves. Or split the files up into chunks.
-- 

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

Mime
View raw message