activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From KameshBathina <>
Subject Broker Hangs with Durable subscriptions
Date Thu, 31 Dec 2009 09:59:29 GMT


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,
View this message in context:
Sent from the ActiveMQ - User mailing list archive at

View raw message