[rabbitmq-discuss] Slow shutdown issue

Marek Majkowski majek04 at gmail.com
Fri Jul 22 09:59:01 BST 2011


Hi,

I don't know the answers to all your questions.

On Thu, Jul 21, 2011 at 20:18, Raymond Murthi <rmurthi at gilt.com> wrote:
> I am pretty new on RabbitMQ and I am trying to do a stress test on RabbitMQ (v. 2.5.1) using the following properties: 1kb persistent message, nondurable queue, and without any ready consumer (that is, just writing to the queue). However, every time I overload the RAM (13.7GB high watermark) and force RabbitMQ to write to disk, I always experience a very long wait time whenever I want to shutdown the server/stopping the app/purging the queue. The wait time could be over an hour depending on the number of messages I sent (I sent over 5 millions messages). I  also notice that RabbitMQ tries to dump the messages from the memory to the disk (under /msg_store_transient) - since nothing is consumed.

This is quite a hard thing for rabbit - you're using it as a database
rather than messaging system!

> Is it a common behavior? I read the documentation and it looks like it is (but isn't it too long?).
> How to kill the process immediately?

I can only suggest what you already know: queue_purge or queue_delete.

> And why are messages stored under /msg_store_transient instead of /msg_store_persistent? What  is the difference between the two directories?

You said you are sending messages to a nondurable queue - so in a case
of broker shutdown, the queue will be lost. If you want to use
persistance, you need to send persistent messages to a durable queue.
That's why you see messages in the msg_store_transient.

I would be interested to hear what are the results of your test for
persistent/durable messages!
(though rabbit will probably initally be slower)

> I would like to understand on the memory/disk usage and how messages are stored.

Cheers,
  Marek


More information about the rabbitmq-discuss mailing list