camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <>
Subject Re: Transactional batching
Date Wed, 11 Mar 2009 07:12:05 GMT
On Tue, Mar 10, 2009 at 8:23 PM, Thomas Beckmann
<> wrote:
> Hi,
> Am Dienstag 10 März 2009 schrieb Claus Ibsen:
>> On Tue, Mar 10, 2009 at 3:23 PM, Thomas Beckmann
>> <> wrote:
>> > Hi,
>> >
>> > we are using camel 1.6 and we have a simple route that reads from an
>> > activemq queue and writes to another activemq queue based on a recipient
>> > list. The read and write is done in a transaction.
>> >
>> > Is it possible to somehow configure a batchsize and timeout so that a
>> > couple of messages are processed in one transaction?
>> Could you also try the ActiveMQ user forum? Could be AMQ has such support.
>> However in Camel I am not aware of such a support.
> But how could activemq help. Isn't it camel that is responsible for
> transaction demarcation?
No Camel is just routing and mediation. The TX manager is AMQ, or
whatever you configure with Spring TX.

So if you need to be able to do batch consuming of messages in a
single transaction then its something that AMQ should help support.
Camel JMS is build on top of Spring JMS, so if its something that
Spring JMS support as well, then it could very well be something Camel
can do also.

>> What is the reason for this?
> The FUSE tuning guide says:
> "Even if you have to pay the performance cost of XA transactions - using
> batching (processing and sending many messages in a single transaction (JMS
> or XA) will boost performance considerably. This is because you share the
> synchrony cost (the waiting for things to be written and sync'd to disk)
> across many many messages."
> That's exactly what we want to achieve.
Well this applies for XA only. Are you sure you want to use XA and not
just regular TX? XA is painful, expensive and can be hard to get
working accross different vendor products/drivers etc. If yes, then
you should consider once more to be really really sure you want to use

And the rule of optmization, dont do it unless there has been
established a fact that there is a performance problem

> Thomas
> --
> Thomas Beckmann
> Dipl.-Math.
> technologies gmbh
> Straßenbahnring 22 / 20251 Hamburg, Germany
> fon       +49 (0)40 / 890584-0
> fax       +49 (0)40 / 890584-20
> HRB Hamburg 70814
> DB48 4B15 11BA 9268 B74B  64A0 48AE 80AB C86A 46A3
> Geschäftsführer: Claudia Dietze, Stefan Richter, Jörg Kirchhof

Claus Ibsen
Apache Camel Committer

Open Source Integration:

View raw message