[rabbitmq-discuss] max amount of persisted data

Matthias Radestock matthias at lshift.net
Mon Mar 16 22:06:32 GMT 2009


tsuraan wrote:
> How exactly does Rabbit use mnesia?  Does it persist messages to a
> simple disc_copy table that can only hold 4GB of data, or does it use
> fragmented tables or local_content tables?

Mnesia is only used for storing routing and configuration data. Messages 
are persisted to a disk_log in a snapshot+delta format.

> I'm basically wondering whether stock Rabbit can handle more than 4GB
> of persisted data

Yes, but with some important caveats:

- All persisted data is currently also held in memory and hence bounded 
by that.

- In some scenarios RabbitMQ will end up spending most of its time 
writing new snapshots. That's because the time it takes to write a 
snapshot is proportional to the amount of persisted data, and snapshots 
are written every 500 entries (i.e. publishes, deliveries, acks) by default.

The plans we have for disk-based queues remove these limitations.


More information about the rabbitmq-discuss mailing list