[rabbitmq-discuss] chan.flow and vm_memory_high_watermark
Simon MacMullen
simon at rabbitmq.com
Wed Jun 9 17:15:30 BST 2010
On 09/06/10 16:12, Nicolás César wrote:
> Is there any other way to checkit? Is there a way to get a memory dump
> from the vm to see whats going on?
Well, there's erlang:memory/0.
If you're using the Debian packages, type:
$ sudo -u rabbitmq -H erl -remsh rabbit@`hostname` -sname foo
to establish a connection to the RabbitMQ Erlang process then at the
Erlang prompt:
memory().
to give some high level statistics about what's using memory.
Other things to think about:
* Are you using the most recent Erlang? (R13B04) GC has improved recently.
* Are you stopping the queues from hibernating? If you've written
something like a shell script to repeatedly invoke rabbitmqctl
list_queues this will keep the queue processes from hibernating which in
turn stops them from GCing on hibernate. If queues are busy this is not
a problem as they also GC every (n) reductions, but if they're
almost-but-not-quite idle it can be a problem. It doesn't have to be a
shell script, anything that means the queues never get 10 seconds or so
idle.
Cheers, Simon
More information about the rabbitmq-discuss
mailing list