Enable Delayed messages with RabbitMQ

Sometimes you want to delay the delivery of messages for a certain time so that subscribers doesn't see them immediately. The AMQP protocol doesn't have a native delayed queue feature, but with RabbitMQ's AMQP protocol extensions we can easily emulate one by combining the message TTL function and the dead-lettering function.
Note: There is now a plugin available for delayed messages (RabbitMQ 3.5.3 and later versions),RabbitMQ delayed messages exchange plugin. The RabbitMQ Delayed Message Plugin adds a new exchange type to RabbitMQ where messages routed by that exchange can be delayed if the user adds a delay header to a message. Read more about the plugin here.
Download link: https://dl.bintray.com/rabbitmq/community-plugins/3.7.x/rabbitmq_delayed_message_exchange/

To enable the plugin you need to enable the below dependent plugins also.
rabbit_common
jsx
lager
ranch
ranch_proxy_protocol
recon
goldrush

No comments:

Post a Comment