栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

RabbitMQ 的使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

RabbitMQ 的使用

前提 项目使用微服务方式 ,有一个删除操作,数据内含有一个file url 删除数据需要调文件服务进行删除文件。目前采用的方式是 feign 方式,这里改为mq 方式删除。

前提 导包这里就不叙述了

第一步 配置

1.设置消息预取 值为1 表示 处理完1个消息再拿下一个消息进行处理 如果不设置 后果可以百度(影响可大可小 尽量设置)

配置2  因为消息发送是用jdk的序列化将对象序列化,会显得比较臃肿 这里配置成json序列化, 注意消息发送服务和接受消息服务都要重写这个bean

 

        

代码实现

1 消息发送  

        前提 手动创建队列 和交换机   目前还不知道咋自动创建队列,和交换机绑定队列 

我这里用管理网页手动添加的绑定关系

 

消息发送代码

注入模板

 用模板方法发送消息

 第一个参数表示交换机名称,第二个参数表示key 第三个参数表示要传的对象这里是一个string对象

消息接受  @component 一定要加 不然创建不了对象!

 

@RabbitListener(bindings = @QueueBinding(
        value = @Queue(name = "file"),
        exchange = @Exchange(name = "amq.topic",type = ExchangeTypes.DIRECT),
        key = {"red","bleak"}
)) 这个注解是监听  - 参数为绑定 绑定 消息 和交换机  然后还有key 即可

type 有三种类型 TopicExchange 等 需要的话可以自行百度

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/686822.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号