Description
I am testing ActiveMQ 5.5 with my own stress test. I tried to implement a stress test that use jms ressource in the same fashion that my application would do.
For that, I used jms template (from Spring) and a pooled connection factory (as recommended). I run a fixed number of thread that plublish on fixed number of topics. Each thread pick up a topic and enter a loop that will send a message on the choosen topic.
The issue is reproductible with SimpleAuthenticationPlugin active.
Configuration of the test :
- 100 topics
- more than one thread per topic (actually 1500 producer threads)
Common connection properties :
- alwaysSessionAsync=false
- dispatchAsync=false
- optimizeAcknowledge=true
- socketBufferSize=131072&trace=true&wireFormat.cacheSize=2048&wireFormat.tcpNoDelayEnabled=true&wireFormat.tightEncodingEnabled=true&keepAlive=true&soTimeout=10000&connectionTimeout=10000\
Producers :
- Message are not persistent
- There is no transaction
- Message expiration time is 30s
- Unsing JMS template singleton with a PooledConnectionFactory
- 3 JVM running
- connection options alwaysSyncSend=true,copyMessageOnSend=false
Consumers :
- just listening to each topic with a SimpleMessageListenerContainer and count messages received
- 3 JVM running
In attachment, you will find activemq config file and thread dumps. I can attach the producer/consumers code if you need it but I think you have your own tests.
This Jira is critical for me because security is mandatory for our use.
If you need more information, please ask.
Attachments
Attachments
Issue Links
- relates to
-
AMQ-7021 DestinationMap access inside Abstract Region readwrite lock does not need sync
- Resolved