activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From KameshBathina <>
Subject Re: Broker Hangs with Durable subscriptions
Date Mon, 04 Jan 2010 08:31:27 GMT

I even tried with 5.3. The timetolive field is working but for this to take
effect the consumers should active. Other wise if consumer is down and
timetolive field expires the broker will maintain them in memory or disk,
till the consumer is up. When the consumer is UP, the messages are validated
for timetolive and if they are expired they will be discarded and will not
be delivered to consumers. 

I think as per design, when consumers are down and even if timetolive is
expired, messages will be in messaging system. Is it possible for broker to
make them discarded based on timetolive irrespective of whether consumer is
UP or DOWN ?

rajdavies wrote:
> I would suggest you upgrade to 5.3 if possible - it would be the most  
> straight forward way to resolve this
> On 31 Dec 2009, at 09:59, KameshBathina wrote:
>> Hi,
>> We are using ActiveMQ 4 as messaging middle ware in our application.  
>> Our
>> architecture involves many (~20) durable subscribers and single  
>> producer,
>> all consumers are subscribed to a single topic. The producer sends  
>> keep
>> alive messages to all consumers periodically.
>> When one of the consumer goes down, then the pending messages for that
>> consumer are keep growing and over a time it occupying 20MB (default  
>> broker
>> memory for AMQ 4) and making broker MemoryPercentageUsed to 100%.  
>> After this
>> point the producer is blocked in publish() method. Hope that the  
>> default
>> producer flow control mechanism is triggering and halting the  
>> producer. Even
>> though other consumers are working fine, due to one down consumer  
>> entire
>> messaging system is going into hang state. The broker is in this  
>> state till
>> the DOWN consumer is up and consumed its messages.
>> I have gone through documentation and user forums and found that
>> "constantPendingMessageLimitStrategy" and  
>> "constantPendingMessageLimit"
>> properties can be used to limit the number of pending messages per  
>> consumer.
>> But these options are not working for durable subscribers.
>> I tried with timetolive option with messages also, in AMQ 4 this  
>> field is
>> not working (ie., even after timetolive expired the messages are not  
>> getting
>> removed from messaging system)
>> Can any body suggest me how can I avoid this issue with durable  
>> subscribers
>> and limit the pending messages so that producer will not block and  
>> rest of
>> the system will work fine.
>> Thanks and Regards,
>> Kamesh
>> -- 
>> View this message in context:
>> Sent from the ActiveMQ - User mailing list archive at
> Rob Davies
> I work here:
> My Blog:
> I'm writing this:

View this message in context:
Sent from the ActiveMQ - User mailing list archive at

View raw message