activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James Black <be_st...@yahoo.co.uk>
Subject Re: systemUsage and destinationPolicy config
Date Tue, 04 Oct 2011 13:47:15 GMT
Hi

guys I have just tried this and the results do not match what you specified.

*Test 01*

If I set systemUsage -> memoryUsage = 20 MB
and destinationPolicy -> memoryLimit = 1MB (globally to all queues with the
< character)
We are using the default cursor and ActiveMQ 5.5.0.
We are using the NIO transport.
JMX monitoring is used to get the information below.

Then with an empty single queue start adding persistent messages with no
consumer.  

The queue -> memoryPercentUsage will go to 69% and then go no further as
messages appear to be written to disc instead?

At this point with trace level debugging I can see the following in the
logs:

2011-10-04 14:36:26,328 | TRACE | QueueStorePrefetch29645136 - disabling
cache, lastCachedId: ID:<DELETED> current node Id: ID:<DELETED> |
org.apache.activemq.broker.region.cursors.AbstractStoreCursor | ActiveMQ NIO
Worker

The producer does not block at this point though and the count of messages
on the queue continues to increase.  The Broker-> MemoryPercentUsage will
not increase once the messages are starting to be written to disc.

*Test 02*

systemUsage -> memoryUsage = 1 MB
destinationPolicy -> memoryLimit = 100 MB (to all queues)
Using the default cursor again, NIO, etc.

Then with an empty queue start adding persistent messages.

The Broker-> MemoryPercentUsage will go up until 100% then the producer will
be blocked.

The following in the logs:

2011-10-04 14:42:31,362 | INFO  | Usage Manager Memory Limit (20971520)
reached on queue://test.size.01. Producers will be throttled to the rate at
which messages are removed from this destination to prevent flooding it. See
http://activemq.apache.org/producer-flow-control.html for more info |
org.apache.activemq.broker.region.Queue | ActiveMQ NIO Worker


Therefore my results from the data is that blocking only occurs when the
systemUsage -> memoryLimit is hit 100% and that at 70% of the
destinationPolicy we start writing the messages to disc.

--
View this message in context: http://activemq.2283324.n4.nabble.com/systemUsage-and-destinationPolicy-config-tp3867059p3871011.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Mime
View raw message