activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Torsten Mielke <>
Subject Re: Why the transaction down the performance so much???
Date Thu, 01 Dec 2011 09:02:57 GMT

I have recently run some simple performance tests when consuming msgs within a local JMS transaction
(committing after every msgs) and without transaction. 
There surely was a difference in performance but it was rather small. Unfortunately I don't
have any numbers at hand right now but it was fairly in line with this comment from
"Incidentally, its a common misconception that transactions are slow; there's no real difference
between a JMS transaction and a Message.acknowledge() from an architectural perspective in

Btw, the maven-activemq-perf-plugin can also be used to test the speed of transacted consumers/producers

Torsten Mielke

On Dec 1, 2011, at 1:40 AM, lzr wrote:

> According to my comprehension of the JMS Spec, without transaction and AUTO_ACKNOWLEDGE
in session the disk sync should occur once a meesage is get by the consumer; it's just like
the case each message has a transaction committing?
> In this case the performance of the two cases should be similar, right?
> At 2011-12-01 01:12:48,"Gary Tully" <> wrote:
>> For producers, only use transactions is you are sending more than one
>> message, so for batching. Jms already guarantees a disk sync when a
>> send returns.
>> For clients do what you wish.
>> Do try and cache connections/sessions/prodcuers
>> and if you have a single consumer cache that.
>> Remeber, transactions mean disk syncs, so you will always be limited
>> by the speed of a fsync to your disk.
>> 2011/11/30 lzr <>:
>>> Dear all,
>>> By my test, the performance down greatly than the test case without the
>>> transaction.
>>> For same program:
>>> Without transaction in Session, 1000 tps;
>>> With transaction in Session, about 10~20 tps which is absolutel y my
>>> expectation!!!!
>>> I attached my source files and configuration files. It's much appreciated if
>>> any suggestion.
>>> Thanks a lot!
>> -- 

View raw message