[rabbitmq-discuss] Config File Options

Matthew Sackman matthew at rabbitmq.com
Mon Sep 6 21:17:09 BST 2010


On Mon, Sep 06, 2010 at 01:51:04PM -0600, Jason J. W. Williams wrote:
> Thank you Matthew. That's very helpful. Are persister_max_wrap_entries
> and persister_hibernate_after anything you'd want to tune for your
> workload in the new persister?

No, they're only for the old persister, not the new. The two that are
relevant for the new persister are:

msg_store_file_size_limit - this is the file size limit of the
msg_store. The default is 16MB. Larger values will allow you to drive
the disk faster, but GC will take longer.

queue_index_max_journal_entries - this is the number of entries in queue
journals before they get flushed out. Again, larger numbers will make
better use of disk bandwidth at the expense of a larger interruption
when journal scattering takes place.

In both cases, if you're doing lots of short transactions, smaller
numbers may help. The msg_store_file_size_limit is best tuned to the
size of your messages, whilst queue_index_max_journal_entries is best
tuned to the nature of your publications, regardless of size.

If I sound vague, it's because we're yet to do any investigation into
what workloads benefit best from what settings. Feel free to report your
findings. Also, SSDs make a good improvement, especially when Rabbit is
heavily loaded and doing transactions, or is very short of file
descriptors.

> Also, do you guys see any other Mnesia options besides
> dump_log_write_threshold that usually need to be tuned for Rabbit?

Rabbit only uses mnesia for exchange/binding/queue meta information. Not
for messages. Thus unless you have a very high churn rate of those
resources, you shouldn't need to tune it at all.

Matthew


More information about the rabbitmq-discuss mailing list