Schedule delayed message delivery in RabbitMQ using the delayed message exchange plugin

domain: rabbitmq.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Enable the community rabbitmq_delayed_message_exchange plugin on the broker (rabbitmq-plugins enable rabbitmq_delayed_message_exchange)
  2. Declare an exchange with type x-delayed-message and an additional argument x-delayed-type set to the underlying routing behavior you want (direct, topic, fanout, or another exchange type)
  3. Publish messages to this exchange with a custom header x-delay set to the desired delay in milliseconds
  4. RabbitMQ holds the message internally and, once the delay elapses, routes it to bound queues/exchanges according to the x-delayed-type routing rules and the message's routing key
  5. On the consumer side, expect the x-delay header to be present but negated (e.g. a 5000ms delay arrives with x-delay = -5000)
  6. Bind queues to the delayed exchange exactly as you would for its underlying exchange type

Known gotchas

Related routes

Publish messages to RabbitMQ reliably using publisher confirms and configure consumers with prefetch and a dead-letter exchange
rabbitmq · 6 steps · unrated
Partition RabbitMQ message consumption across queues using the consistent hash exchange plugin
rabbitmq.com · 6 steps · unrated
Forward MQTT messages to a Kafka topic using the EMQX rule engine and Kafka Producer sink
docs.emqx.com · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans