activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kaipa <alex.zait...@mtu-net.ru>
Subject Re: Bad AMQ Linux performance
Date Fri, 25 Aug 2006 09:49:30 GMT

Hi James,

Thank you for reply. I still can not get it solved.

1. Yes, I send a number of messages to the queue first and then start to
receive
2. If I disable persistence Linux is still that bad.
3. However, if I disable transactions -- everything works fine and fast both
with/without persistence. So the problem is in how transactions are handled,
I believe.
4. Broker is running on local file system.

I have tried simpler test scenario: send-commit-receive-commit. On the same
connection and session.

Windows:
Testing QService.sendMessage() followed by QService.receiveMessage()
1000 ops 1578ms
Average speed: 633 ops/s

Linux:
Testing QService.sendMessage() followed by QService.receiveMessage()
1000 ops 202094ms
Average speed: 4 ops/s

I am absolutely lost!

I have also tried to split message consumption into several threads and
sessions -- that improves message consumption proportionally but this is not
the root cause.




James.Strachan wrote:
> 
> BTW for the consumer tests, are there pleny of messages on the queue
> before you start trying to consume? How does the performance differ
> between linux and windows if you disable persistence?
> 
> The only real difference between the two - assuming things are not
> CPU, network or IO bound is the performance of the disk writes.
> Persistent sending/consuming of messages by default requires blocking
> the client until the broker does a sync-to-disk of the journal.
> 
> Is the broker running on a local file system or a shared network drive?
> 
> On 8/24/06, kaipa <alex.zaitsev@mtu-net.ru> wrote:
>> Hi,
>>
>> I've read through archives and found that some people experience the same
>> problem but there were no solution. Tests work great fast on Windows
>> Laptop
>> but unbarely slow on Linux server.
>>
>> - I have the standard configuration from Latest AMQ release (4.*). The
>> only
>> difference that I have tried Kaha persistence that works much faster than
>> JDBCJournal. I tried JDBCJournal as well -- perfomance difference is the
>> same.
>> - I use tcp transport
>> - Queue is persistent
>> - Session is transactional
>>
>> First pair of tests commit session after every message. Second pair
>> commit
>> after all messages are sent or received. I am especially concerned about
>> first pair that is too slow.
>>
>> Windows:
>>
>> Testing QService.sendMessage()
>> 500 ops 453ms
>> Average speed: 1103 ops/s
>>
>> Testing QService.consumeMessage()
>> 500 ops 484ms
>> Average speed: 1033 ops/s
>>
>> Testing QService.sendMessageNoCommit()
>> 500 ops 188ms
>> Average speed: 2659 ops/s
>>
>> Testing QService.consumeMessageNoCommit()
>> 500 ops 125ms
>> Average speed: 4000 ops/s
>>
>> Linux:
>>
>>      [java] Testing QService.sendMessage()
>>      [java] 500 ops 22290ms
>>      [java] Average speed: 22 ops/s
>>
>>      [java] Testing QService.consumeMessage()
>>      [java] 500 ops 40366ms
>>      [java] Average speed: 12 ops/s
>>
>>      [java] Testing QService.sendMessageNoCommit()
>>      [java] 500 ops 926ms
>>      [java] Average speed: 539 ops/s
>>
>>      [java] Testing QService.consumeMessageNoCommit()
>>      [java] 500 ops 1017ms
>>      [java] Average speed: 491 ops/s
>>
>> I suspect it is something with activemq io libraries. Java web services
>> work
>> fine on the same server, the problem is only with activemq.
>>
>> Please, advise where I can look into
>> --
>> View this message in context:
>> http://www.nabble.com/Bad-AMQ-Linux-performance-tf2159490.html#a5966799
>> Sent from the ActiveMQ - User forum at Nabble.com.
>>
>>
> 
> 
> -- 
> 
> James
> -------
> http://radio.weblogs.com/0112098/
> 
> 

-- 
View this message in context: http://www.nabble.com/Bad-AMQ-Linux-performance-tf2159490.html#a5980491
Sent from the ActiveMQ - User forum at Nabble.com.


Mime
View raw message