activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Tully <gary.tu...@gmail.com>
Subject Re: Help understanding memory usage/limits
Date Wed, 07 Apr 2010 10:51:17 GMT
richard, you have configured a 1mb limit for every queue because you use the
">". So the broker will keep up to 1mb of space in memory for each queue, up
to 16MB for 16 queues.

The paging (via fileQueueCursor) kicks in for each destination only when 70%
of the shared system limit (20mb) is reached. Which ever destination tips it
over the limit will have its memory usage flushed to disk because it is
configured with a fileQueueCursor. System usage will reduce by 1Mb and the
rest of the destinations will continue to use memory up to their limit.

The salient point being that paging to disk is dependent on systemUsage
configuration, not individual/per destination memory usage.


On 7 April 2010 11:22, Richard Holt <richard_holt@btopenworld.com> wrote:

>
> Sorry about the thread hijack - however if i have something like this
>
>        <destinationPolicy>
>            <policyMap>
>                <policyEntries>
>                    <policyEntry queue=">" memoryLimit="1mb"
> producerFlowControl="false">
>                        <pendingQueuePolicy>
>                            <fileQueueCursor/>
>                        </pendingQueuePolicy>
>                    </policyEntry>
>                </policyEntries>
>            </policyMap>
>        </destinationPolicy>
>
>                <systemUsage>
>                  <systemUsage>
>                        <memoryUsage>
>                          <memoryUsage limit="20mb"/>
>                        </memoryUsage>
>                        <storeUsage>
>                          <storeUsage limit="100mb"/>
>                        </storeUsage>
>                        <tempUsage>
>                          <tempUsage limit="100mb"/>
>                        </tempUsage>
>                  </systemUsage>
>                </systemUsage>
>
> and an Xmx of 32mb
>
> Once it reaches a limit of 1mb of messages per queue it will start to page
> out to disk.
>
> And the activemq system reserves 20mb of memory for itself?
>
> Is the 1mb then across all queues. So if i have 16 queues i in fact need
> 16mb. Because then the 20mb + 16 * 1mb will exceed my xmx value?
>
> Sorry if i am being obtuse but like the poster i am trying to see how the 3
> memory settings relate to each other.
>
> Coincidentally i have tested the above on 5.3.1 and it works really well.
> If
> i use 5.3 it breaks which i think is due to this
> https://issues.apache.org/activemq/browse/AMQ-2610 and this
>
> --
> View this message in context:
> http://old.nabble.com/Help-understanding-memory-usage-limits-tp28118112p28163080.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>


-- 
http://blog.garytully.com

Open Source Integration
http://fusesource.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message