You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by "tomasz.masternak" <to...@gmail.com> on 2010/09/23 11:52:06 UTC

Memory limit for sum of message sizes on a topic

Hi,

I have following configuration:
1. 4  activemq 5.4 brokers connected into full mesh.
2. One has sender connected and other three one receiver each
3. Producer sends messages to topic on which all receivers are subscribed.
4. I use memory persistence store.


What I want to achieve is limit on total memory (sum of message sizes) per
topic for a broker.
I was trying to use configuration option:

<policyEntry topic=">" producerFlowControl="false" memoryLimit="1mb">
   <pendingSubscriberPolicy>
       <vmCursor />
   </pendingSubscriberPolicy>
</policyEntry>

I would expect it to work in following way. If there is a slow consumer than
after the limit is reached other consumers will have to wait for him until
it frees some space.

Is there a way to achieve such behavior?

Thanks for help
Tomek

-- 
View this message in context: http://activemq.2283324.n4.nabble.com/Memory-limit-for-sum-of-message-sizes-on-a-topic-tp2551726p2551726.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: Memory limit for sum of message sizes on a topic

Posted by Dejan Bosanac <de...@nighttale.net>.
Hi Tom,

you have producer flow control disabled, so your memory limit don't
have any effect. If you enable it, it will block producer until slow
consumer acks pending messages and thus make more space.


Cheers
--
Dejan Bosanac - http://twitter.com/dejanb

Open Source Integration - http://fusesource.com/
ActiveMQ in Action - http://www.manning.com/snyder/
Blog - http://www.nighttale.net



On Thu, Sep 23, 2010 at 11:52 AM, tomasz.masternak
<to...@gmail.com> wrote:
>
> Hi,
>
> I have following configuration:
> 1. 4  activemq 5.4 brokers connected into full mesh.
> 2. One has sender connected and other three one receiver each
> 3. Producer sends messages to topic on which all receivers are subscribed.
> 4. I use memory persistence store.
>
>
> What I want to achieve is limit on total memory (sum of message sizes) per
> topic for a broker.
> I was trying to use configuration option:
>
> <policyEntry topic=">" producerFlowControl="false" memoryLimit="1mb">
>   <pendingSubscriberPolicy>
>       <vmCursor />
>   </pendingSubscriberPolicy>
> </policyEntry>
>
> I would expect it to work in following way. If there is a slow consumer than
> after the limit is reached other consumers will have to wait for him until
> it frees some space.
>
> Is there a way to achieve such behavior?
>
> Thanks for help
> Tomek
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/Memory-limit-for-sum-of-message-sizes-on-a-topic-tp2551726p2551726.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>