Delayed Messages Plugin
Implement delayed message delivery using the RabbitMQ Delayed Message Exchange plugin. Schedule messages to be processed at a future time without custom timers.
What are Delayed Messages?
Sometimes you don't want a message processed immediately. Think of sending a reminder email an hour from now, or processing a payment 30 minutes after an order is placed.
Delayed messages allow you to publish a message to RabbitMQ, but tell the broker to hold onto it for a specific duration before delivering it to consumers.
Scheduling Without the Plugin
Without a dedicated feature, scheduling messages can be complex:
- Custom Timers: You might build your own service with timers, but this adds complexity and a single point of failure.
- Polling Databases: Storing messages in a database and periodically checking for due times is inefficient.
- External Schedulers: Using CRON jobs or other external schedulers still requires your application to manage the message state.
RabbitMQ's Delayed Message Plugin simplifies this greatly!