rabbitmq使用延迟队列

  • 业务说明: 需要定时(例如:一周、一年后)调用智能合约接口,当然也可以是别的定时业务。好处就是当项目进程挂了mq依旧可以正常运行,当进程重启时可以将服务停止时间内的消息重新消费掉数据不会丢失。

  • 使用方法: 采用插件x-delay-message的方式实现

  • 相关介绍:https://blog.csdn.net/weixin_65846839/article/details/125232167

  • 插件下载:https://github.com/rabbitmq/rabbitmq-delayed-message-exchange

  • 插件下载位置:https://rabbitmq.com/plugins.html#plugin-directories

  • 示例代码(JS参考)https://zhuanlan.zhihu.com/p/121083535

  • 温馨提示:
    1. 在github上可以直接选择对应版本的.ez文件。
    2. 插件安装可以参考示例代码中的说明,插件下载位置默认是在 /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.4/plugins( 版本号有所区别)。
    3. 当在服务器设置完成,区别于一般的交换机设置,类型上需要选择x-delayed-message。arguments需要设置成x-delayed-type。详情参考示例代码。
    4. 绑定队列。需要在交换机设置处绑定队列,获取routing key。
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43234632/article/details/125717203