2012/1/14 Ganuke Perera <ganu...@irononetech.com>: > I am using a topic name MarketData. I have set the time to live to 5 > minutes in the producer. Also I am using the default configuration for > ActiveMQ. I am adding messages with the rate of 200 messages per second. > And there is one subscriber to the topic and at the start it receives > message without any issue. > > My problem is after 2 or 3 minutes producer hangup in the producer send > method. When I looked in the activeMQ console I saw the following message. > > ' Usage Manager memory limit (1048576) reached for topic://MarketDataTopic. > Producers will be throttled to the rate at which messages are removed from > this destination to prevent flooding it.'
That's producer flow control: your producer(s) push data faster than your consumer receives it. See http://activemq.apache.org/producer-flow-control.html If you're using the default ActiveMQ configuration, producer flow control is on, with memoryLimit=1Mb, you can find that from ActiveMQ config file: <destinationPolicy> <policyMap> <policyEntries> <policyEntry topic=">" producerFlowControl="true" memoryLimit="1mb"> <pendingSubscriberPolicy> <vmCursor /> </pendingSubscriberPolicy> </policyEntry> ... You can change policy fo your particular topic or for all topics, see details at http://activemq.apache.org/per-destination-policies.html