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

Reply via email to