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.

Reply via email to