Usage Manager memory limit reached for topic. Producer hangs
My setup is:
- single AMQ 5.3 broker, with no persistence (persitent="false")
- two nio producers
- around 70 tcp consumer
- 5000 topics total with lastImageSubscriptionRecoveryPolicy and constantPendingMessageLimitStrategy=10
- producers do asyncSend
- no producerFlowControl configuration
- memoryUsage limit=4gb
- tempUsage limit=2gb
- -Xmx4gb with 64-bit JVM on Windows 2008
MemoryPercentUsage is constantly below 1, but all of a sudden I get a "Usage Manager memory limit reached for topic", and the producer hangs.
Before messing with producerFlowControl I would like to understand what this means and what may be causing it. Is this a problem with the producers or the consumers? What should I monitor besides MemoryPercentUsage? I've read the following pages:
Re: Usage Manager memory limit reached for topic. Producer hangs
just as a remark (which has not really to do with your problem) :
you may want to set memoryUsage to a lower value, since I think this is the size AMQ will use to keep messages in memory. If you set your JVM size to the same, you may not have space left for other objects (connection/topics/etc...) at some stage and you could get a OOM.