Do you have consumers? If not then memory usage will never decrease. If so, then they need to be *faster* than the producers in order to reduce memory usage otherwise the producers will send new messages as soon as any messages are consumed effectively keeping you at 100% usage.
Justin On Fri, Apr 24, 2020 at 10:21 AM Saurabh Bhatia <arjun.bhatia.t...@gmail.com> wrote: > I have 2 queues setup in ActiveMQ broker. Wanted to test that producer flow > control is working and producers for both queue are getting stalled when > there is no memory. As soon as event occurs, messages start getting > enqueued > in both queues, but everything stops after memory reaches 100%(sometimes it > is more than 100 % also, don't know how is that possible for persistent > messages). Memory never reduces from 100 % so that producers can again > start > putting messages in both queues. > > <policyEntry queue=">" memoryLimit="1000MB" producerFlowControl="true"/> > <systemUsage> > <systemUsage> > <memoryUsage> > <memoryUsage percentOfJvmHeap="70" /> > </memoryUsage> > <storeUsage> > <storeUsage limit="50MB"/> > </storeUsage> > <tempUsage> > <tempUsage limit="50MB"/> > </tempUsage> > </systemUsage> > </systemUsage> > > > <http://activemq.2283324.n4.nabble.com/file/t379908/QTJBy.png> > > Is there something wrong with configuration? I want to slow down producer > when memory is full(basically stop to enqueue) and again start when memory > is free. Why is memory not getting free? Is there a way to slow down > producer queuing even before memory is full if there are enough items on > queue already to deque? > > > > -- > Sent from: > http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html > >