7.SpringBoot整合RabbitMQ实现微服务间的异步消息沟通

本文介绍了如何通过RabbitMQ实现微服务间的异步消息沟通,详细讲述了从需求分析到搭建RabbitMQ服务器,再到配置SpringBoot、发送和接收消息的全过程,最终确保数据一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.需求:
前我们已经开发了两个微服务,一个用来管理设备目录,一个用来管理技术状态。现在需要通过MQ来沟通彼此。两个微服务之间的关系如图:

关系

左右都是一个单独的微服务,彼此之间没有直接的关联关系,各自的信息是分库保存的。也就是说在通过设备目录中存在的信息建立技术状态时,技术状态中保存的并非设备目录信息的引用,而是副本。这样可以保证即使在设备目录服务无法工作时技术状态服务不受影响。由于保存的是副本而非引用,那么当设备目录中的信息发生变化时,就需要使用消息队列发送通知如:id为1的设备名称变为‘发电机’这样的消息给技术状态服务,技术状态服务接收通知后,根据消息内容更新自身数据库中的信息,保证整个系统中数据的一致性。
2.搭建RabbitMQ服务器
依然使用Docker的方式来部署RabbitMQ服务器。
按照RabbitMQ官方Docker使用说明
先使用docker pull rabbitmq命令获取RabbitMQ的镜像。
接着使用
docker run -d --hostname my-rabbit --name some-rabbit
-p 8080:15672
-e RABBITMQ_DEFAULT_USER=user -e RABBITMQ_DEFAULT_PASS=password
rabbitmq:3-management
测试访问控制台

测试访问控制台

部署一个指定用户名和密码并且可以通过8080端口访问控制台的RabbitMQ服务器。
3.配置SpringBoot
在项目的POM文件中加入Spring-AOP和Spring-AMQP的依赖

                
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值