On 1 May 2008, at 00:02, Filip Hanik - Dev Lists wrote:

There doesnt seem to be a way of limiting how messages are delivered to the client. the ActiveMQMessageConsumer.unconsumedMessages seems to fill up, all to quickly, and eventually cause an OOME

we have this setting on the server
<destinationPolicy>      <policyMap>
      <policyEntries>
<policyEntry topic=">" producerFlowControl="false" memoryLimit="10mb"> <deadLetterStrategy> <sharedDeadLetterStrategy processExpired="false" processNonPersistent="false" /> </deadLetterStrategy>
          <!--  10 seconds worth -->
<!-- lets force old messages to be discarded for slow consumers -->
          <pendingMessageLimitStrategy>
            <constantPendingMessageLimitStrategy limit="1000"/>
          </pendingMessageLimitStrategy>
        </policyEntry>              </policyEntries>
    </policyMap>
  </destinationPolicy>


is there another setting to protect against this kind of OOME

Filip

Hi Filip,

You can override how many messages are delivered to a consumer by setting its prefetch limit - see the FAQ entry - http://activemq.apache.org/what-is-the-prefetch-limit-for.html




cheers,

Rob

http://open.iona.com/ -Enterprise Open Integration
http://rajdavies.blogspot.com/



Reply via email to