activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Tully <gary.tu...@gmail.com>
Subject Re: How good is ActiveMQ supposed to perform?
Date Mon, 18 Jun 2012 09:51:50 GMT
Sending a single message in a transaction is not efficient and not
giving you anything because a single non transacted send gives the
same guarantees (w.r.t message durability) with less protocol
messages.
For jms sends, transactions only make sense when you want to batch
messages so that you can combine multiple sends into one disk sync on
the broker.

In your scenario, using multiple producers over their own connections
will give you the best performance because you will be able to get
concurrent writes going on on the broker journal and the broker will
be able to combine more than one write into a disk sync.

For persistent messages, waiting for a disk sync before replying to a
send or commit is usually the limiting factor.

On 18 June 2012 09:08, bdv <bart.ki.devos@gmail.com> wrote:
> Recently I have been running some tests against a single instance of ActiveMQ
> 5.6.0.
>
> The goal of these tests was to get to an instance that could handle a load
> according to following parameters:
>
> - message size: 2048 bytes
> - transactional
> - persistant
> - message rate: 2500 messages/second with a possible growth of 5000 m/s
> - non-bulk message transactions (needs to support 2500 clients that each
> send a message, so sending as bulk is cheating)
>
>
>
> You may have noticed 2 other possible combinations:
>
>
>
> Both of these are not possible because working non-transacted and then
> requesting SESSION_TRANSACTED is obviously silly.
>
> Test-setup:
>
> - 1 producer for which the session is committed after each message
> - 1 consumer that simply receives the messages and keeps a count
> (AtomicInteger).
> - The 2500 message-objects are created beforehand so only the actual sending
> / committing is benchmarked.
> - ActiveMQ config :
>
>
> Hardware setup:
>
> - a client: i7 3ghz+, 16gb ddr3, 128 gb ssd
> - a server: i7 3ghz+, 16gb ddr3, 128 gb ssd
> - a gigabit switch
>
> My questions:
> - Is it normal for a test with just transactions and no persistence to be
> slower than a test with transactions and persistence?
> - Why is there such a high impact when transactions are activated? Is there
> a way to remedy this?
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/How-good-is-ActiveMQ-supposed-to-perform-tp4653343.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.



-- 
http://fusesource.com
http://blog.garytully.com

Mime
View raw message