[
https://issues.apache.org/activemq/browse/AMQ-1231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rob Davies resolved AMQ-1231.
-----------------------------
Resolution: Fixed
Thanks Kevin!
I've spent alot of time looking into this - and I did see some big performance
gains. However,
1) because we needed to handle a large number of concurrent queues - which cut
across PretetchSubscription
2) synchronized is meant to be optimized even further in future JRE releases
3) I've found it easier to find concurrent issues with synchronized (locks show
in stack traces)
for now I've opted to reduce the amount of large synchronizations
If you get the time - could you verify that the latest snapshot helps your
performance ?
> Performance issues with
> org/apache/activemq/broker/region/PrefetchSubscription.java and
> org/apache/activemq/store/kahadaptor/KahaTopicMessageStore.java
> -------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: AMQ-1231
> URL: https://issues.apache.org/activemq/browse/AMQ-1231
> Project: ActiveMQ
> Issue Type: Improvement
> Components: Broker
> Affects Versions: 5.0.0
> Reporter: Kevin Yaussy
> Assignee: Rob Davies
> Fix For: 5.1.0
>
> Attachments: KahaTopicMessageStore.java, PrefetchSubscription.java
>
>
> Using Solaris 10 DTrace, I found a couple intense synchronization
> pinch-points in the Broker. Without altering the locking semantics, I
> converted the synchronized methods and one synchronized code block to the JDK
> 1.5 ReentrantLock. There was a pretty significant performance benefit with
> this change. I've attached the code, together with the old synchronized code
> commented out for ease of change examination.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.