Springcloud项目向RabbitMQ消息中间件发送信息(RabbitMQ安装在虚拟机)

一、CRT创建RabbitMQ容器

CRT容器自带RabbitMQ消息中间件,只需要在CRT中输入如下命令:
docker run -id --name=tensquare_rabbit -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15672:15672 -p 25672:25672 rabbitmq:management
(注:tensquare_rabbit为RabbitMQ中的名称,可以改变。网页启动端口为15672)
在这里插入图片描述
启动之后,输入docker ps命令查看是否创建成功
在这里插入图片描述

二、登录RabbitMQ

创建成功之后进入网页,访问15672端口。
(注:安装在虚拟机则填虚拟机地址,否则则为本机地址)
在这里插入图片描述
用户名和密码都为guest
Springcloud项目向RabbitMQ消息中间件发送信息(RabbitMQ安装在虚拟机)_第1张图片
看到如下页面则为RabbitMQ安装登录成功。
Springcloud项目向RabbitMQ消息中间件发送信息(RabbitMQ安装在虚拟机)_第2张图片

三、依赖注入

导入依赖坐标
Springcloud项目向RabbitMQ消息中间件发送信息(RabbitMQ安装在虚拟机)_第3张图片

四、配置yaml文件

配置yaml配置文件
(注:host为地址,如果安装在虚拟机则为虚拟机地址,安装在本机则本机地址。port为端口号,务必注意的是配置文件里写的是5672,而网页访问的是15672)
Springcloud项目向RabbitMQ消息中间件发送信息(RabbitMQ安装在虚拟机)_第4张图片

五、添加业务层代码

这里的业务逻辑其实很简单。本文的业务环境是用户订阅作者,之后作者发文章,他的粉丝都能够收到消息中间件发送的消息。而本文实现的是,将消息发送至消息中间件中,后续文章将介绍如何将消息中间件中的消息发送给用户

业务层添加rabbit模板
在这里插入图片描述

订阅部分,也就是发送消息给消息中间件的前提:创建好交换机,路由键,以及队列,并且用户订阅作者,就相当于将队列绑定到交换机上,并且有路由键作为关联
Springcloud项目向RabbitMQ消息中间件发送信息(RabbitMQ安装在虚拟机)_第5张图片
实现以上业务逻辑之后,粉丝与作者就已经绑定好了,那么当作者发文章之后,程序就像消息中间件发送消息,因此在作者发送文章的方法内,添加如下代码即可
Springcloud项目向RabbitMQ消息中间件发送信息(RabbitMQ安装在虚拟机)_第6张图片

六、测试

首先用户关注某个作者,在用作者的账号发送文章。在消息中间件中即可收到发送的消息
Springcloud项目向RabbitMQ消息中间件发送信息(RabbitMQ安装在虚拟机)_第7张图片

结语:此处难点为发送消息之前需要先创建交换机,之后将队列绑定给交换机,并且关联路由键。

你可能感兴趣的:(消息队列,rabbitmq,spring,cloud,java,java虚拟机)