SpringBoot整合RabbitMQ并实现生产消费

首先项目开源地址:https://gitee.com/shenzhanwang/Spring-rabbitMQ
个人升级版本配置项目开源地址:https://github.com/UserXiaohu/spring-boot-rabbitmq
大佬写的非常NICE,很适合参考学习,赞不绝口啊,很适合对RabbitMQ入门实战。
这里对该项目进行一个简单的学习总结。

项目简介

该项目实现了SpringBoot框架下整合RabbitMQ,并且对四种生产消费模式做了可视化页面进行测试,同时还配备相关的图解,对新手十分友好,代码通俗易懂,部署运行起来也非常简单!

RabbitMQ简介

RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queuing Protocol)的开源实现。主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。所以往往用于不同系统之间的通信(比如业务系统与银行系统之间的通信)或者分布式系统中的通信,其表现性能良好、且相对比较安全。

RabbitMQ基本概念

消息:生产者推送的数据内容,业务处理信息
队列:消费者从队列中拉取消息,生产者也可以直接推送消息到队列
交换机:生产者推送消息到交换器
路由键:绑定交换器和队列,配置交换器和队列之间的消息转发规则

四种生成消费模式

①生产者消费者模型

生产者生产消息到队列,然后消费者直接从队列里消费。图解无交换机,但会使用默认交换机,下图理解更通俗易懂。(我目前学习中用的最多的就是这个)
在这里插入图片描述

②发布订阅模型

相当于通过交换机,广播给所有订阅的队列,然后每个队列的消费者再进行消费(类型为广播(fanout),交换机会将收到的消息广播给所有相连的队列)。
在这里插入图片描述

③direct直连交换机通信模型

该模型如下图,包括一个direct交换机,三个binding,两个队列,两个消费者监听器,消息只会被投入到routingkey一致的队列中。也就是指定队列进行广播。

在这里插入图片描述在这里插入图片描述

④topic主题交换机通信

类似与模糊匹配的方式进行,消息发送。
在这里插入图片描述
在这里插入图片描述

项目运行效果

生产消息可视化页面
在这里插入图片描述

前台生产消息在这里插入图片描述

后台接受消息
在这里插入图片描述
PS:gitee项目开源地址版本相对较老。小伙伴可以关注微信<是云开源>,发送rabbitmq获取相对较新的,我会不定期分享很多好玩有意思的小项目,还有一些干货项目。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_47220500/article/details/121102578