Knowledge base

rabbitmq-persistent verifiedcriticalWritten by the Hub

Messages are written to disk

in the configuration this is a linerabbitmq-persistent: false

Whether messages are stored on disk by the broker, so that mail in the queue survives a broker crash — off by default, and deliberately so.

Values

Values
true · false
Default
false · taken from the build
applying
restart required
where it can be set
in the config file · with a startup flag · as an environment variable

In detail

This is the single most consequential default in the group. With it off, everything queued lives in the broker's memory: a crash or an unclean restart loses it, and there is no record of what was lost. With it on, every message is written to disk before it is acknowledged, which the vendor describes as very slow and which is the honest description — it turns a memory operation into a disk one on every message. Neither setting is wrong; leaving the choice unmade is. For warm-up traffic, losing a queue is an inconvenience. For a client's production run it can be thousands of paid-for messages gone with nothing to show which.

What happens if you get it wrong

Left off on a production node, and the broker restarts uncleanly.Everything queued is gone, silently and without a list of what it was.from the documentation · inference
Turned on without sizing the disk.Every message becomes a disk write; throughput drops and the broker's disk becomes the bottleneck for the whole cluster.from the documentation