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: 
http://old.nabble.com/Broker-Hangs-with-Durable-subscriptions-tp26976903p26976903.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Rob Davies
http://twitter.com/rajdavies
I work here: http://fusesource.com
My Blog: http://rajdavies.blogspot.com/
I'm writing this: http://www.manning.com/snyder/





Reply via email to