[rabbitmq-discuss] RabbitMQ using a ton of memory

Matthew Sackman matthew at rabbitmq.com
Thu Sep 8 13:07:12 BST 2011


On Thu, Sep 08, 2011 at 04:47:27AM -0700, justin.adam.miller at gmail.com wrote:
> Not that this is exactly your purview, but I'm using Spring AMQP RC2,
> with acknowledgeMode set to AUTO which, in Spring AMQP terms, means
> the container will ack every message.
> 
> Also, is there any other way to check that messages are being acked,
> besides checking 'rabbitmqctl messages_unacknowledged"? That number
> definitely returns 0 (or close to it) at all times.

Ok, that certainly sounds like you're doing the right thing.

Rabbit shouldn't continue to chew up more and more memory so I suspect
some sort of resource is being created and not destroyed. Could you
check things like the number of queues, the number of connections and
channels etc and that those numbers are not growing constantly?

96GB is an awful lot of memory!

> > > I can run like this for several hours, all the while watching memory
> > > usage vacillate as erlang garbage collects. These are never monumental
> > > GC's though. It never drops from, say, 30 GB of memory down to 5GB.
> > > It's usually within a few GB. Problem is though, the memory usage
> > > creeps up over that time until we hit the high watermark and then, as
> > > expected, everything stops.
> >
> > > I understand the memory flow control issues and why my producers stop
> > > when that high watermark is hit, but I don't understand why, if I'm
> > > keeping all my queues pretty empty, my memory usage keeps creeping up?

Agreed. If you can provoke this to happen again, then when you reach
that point could you run "rabbitmqctl report" and send us the output
(maybe off list if you see anything sensitive in there and/or it's
huge).

Matthew


More information about the rabbitmq-discuss mailing list