21-RabbitMQ延迟队列插件

RabbitMQ延迟队列插件

下载

官网

https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases

我用的是3.10.7的RabbitMQ, 但是官网没有这么新版本的, 只好下载3.10.2得了

安装

# 进入plugins目录
cd /usr/local/rabbitmq/plugins/

上传包

启动

# 启动延迟插件
rabbitmq-plugins enable rabbitmq_delayed_message_exchange

启动成功

查看控制台

控制台中已经能查看到延迟队列类型了[x-delayed-message]

控制台测试

添加一个exchange

添加一个队列

添加绑定关系

发送消息

这个提示不用管他, 应该是兼容还有问题, 不过只是控制台, 不影响代码

等待20秒后

消息进入队列中, 这个是延迟消息, 之前的TTL消息是过期消息, 不要搞混了

SpringBoot代码集成

复制代码
# 在消息转换器中设置到messageProperties中即可
@Override
public Message toMessage(Object o, MessageProperties messageProperties) throws MessageConversionException {
//        messageProperties.setExpiration(defaultExpire);
    com.dance.rabbitmq.api.Message message = (com.dance.rabbitmq.api.Message) o;
    int delayMills = message.getDelayMills();
    messageProperties.setDelay(delayMills);
    return messageConverter.toMessage(o,messageProperties);
}
复制代码
posted @   彼岸舞  阅读(172)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
历史上的今天:
2020-10-04 CAS 原子操作
2020-10-04 简单理解Callable接口
点击右上角即可分享
微信分享提示