rabbitmq-qos verifiedimportantWritten by the Hub
Prefetch window per consumer
in the configuration this is a line
rabbitmq-qos: …How many messages one consumer thread may hold unacknowledged at a time.
Values
- Values
positive integer- 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 knob that decides how much mail a node claims before it has done anything with it. Claimed messages are invisible to other nodes and are not returned until the node acknowledges or dies, so a large window on a slow node starves the rest of the cluster — and a node that crashes hands its whole window back for redelivery, which is where duplicates come from.
What happens if you get it wrong
A node with a large window is stopped or crashes.Everything in its window returns to the queue for redelivery; anything it had already handed to a receiving server but not acknowledged can be sent twice.from the documentation
Large window on a node that is slow to send.Mail sits claimed on that node while other nodes idle, and the queue looks emptier than it is.inference · inference