On 7/28/06, nlif <[EMAIL PROTECTED]> 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/
