activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Sitsky <>
Subject Re: Optimising PrefetchSubscription.dispatchPending() ideas
Date Tue, 25 Mar 2008 04:05:51 GMT
Hi Mike,

If you are talking about non-persistent messages for queues, then yes, 
the performance should be much better.  If you are talking about topics 
- that is another story.  My application was primarily queue-based, so I 
wasn't concerned with the performance of topics.


Mike Kelley wrote:
> Hi David,
> I'm new to ActiveMQ and unfamiliar with the code (albeit w/experience in
> JMS), so forgive me if this is a silly question: do the performance
> issues/fixes discussed affect non-durable subscriptions (w/non-persistent
> messages) as well?
> Mike
> David Sitsky-2 wrote:
>> Rob and I did some performance enhancements with queues so that a 
>> Queue.send() call was decoupled from the dispatch processing.  In the 
>> past, depending on the state of the consumers, a Queue.send() call could 
>> take a significant amount of time.  We changed it so that a single 
>> thread was responsible for dispatching messages, which avoided a lot of 
>> lock contention.  It also meant a Queue.send() returned as quickly as 
>> possible.
>> I imagine a similar change could be done for Topics, since from what I 
>> can tell, a Topic.send() call currently does its dispatch processing in 
>> the same call.
>> Cheers,
>> David


Nuix Pty Ltd
Suite 79, 89 Jones St, Ultimo NSW 2007, Australia    Ph: +61 2 9280 0699
Web:                            Fax: +61 2 9212 6902

View raw message