异步通信MQ(消息队列)详解大全

🌈hello,你好鸭,我是Ethan,一名不断学习的码农,很高兴你能来阅读。

✔️目前博客主要更新Java系列、项目案例、计算机必学四件套等。
🏃人生之义,在于追求,不在成败,勤通大道。加油呀!

🔥个人主页:Ethan Yankang
🔥专栏:面试八股文||Java项目

🔥温馨提示:划到文末发现专栏彩蛋

🔥本篇概览:MQ(消息队列)服务异步通信详细介绍、rabbitMq快速入门、springAMQP快速入门、发布订阅模型、FanoutExchange、DirectExchange、TopicExchange三类交换机详细使用。


 一、初始MQ:

1.同步通信

也叫同步调用,同步通信一般用的多

1.1同步调用的优点

时效性强,可以立即得到结果

1.2同步调用的缺点

耦合度高、性能下降、资源浪费、级联失败

2.异步通信

2.1异步调用的优点

服务解耦、性能提升;

吞吐量提高、服务没有强依赖;

不会有级联失败的现象;

流量削峰

2.2异步调用的缺点

依赖于Broker的可靠性、安全性、吞吐能力;

架构复杂了,业务没有明显的流程线,不好追踪管理

3.MQ常见技术介绍

MQ(Message Queue),中文是消息队列,字面来看就是存放消息的队列。也就是事件驱动架构中的Broker(“经纪人”“中间人”“代理商”)。

二、RabbitMQ快速入门

1.rabbitMq介绍与安装

1.1rabbitMq的结构和概念

1.2rabbitMq的几个常见概念

2.消息模型介绍

2.1五种消息模型介绍

3.简单消息队列

3.1完成官方示例

3.2发送流程

三、spring AMQP简化操作

1.基本介绍

1.1引出背景

上一章节实现了他的hello world
也就是简单队列模型
当然我们发现官方提供的a篇
写起来非常的麻烦
甚至于啊我都懒得写
直接给大家讲了一遍就算了
那么因此我们接下来呢
第三章就是要学习一种新的东西叫spring AMQP,它可以大大的简化我们的这个消息

1.2AMQP

AMQP——Advanced Message Queuing Protocol,是用于在应用程序或之间传递业务消息的开放标准。该协议与语言和平台无关,更符合微服务中独立性的要求。
 
Spring AMQP——是基于AMQP协议定义的一套API规范,提供了模板来发送和接收消息。包含两部分,其中spring-amqp是基础抽象,spring-rabbit是底层的默认实现。

1.3SpringAMQP

2.入门案例

2.1消息发送

2.2消息接收

3.Work Queue 工作队列

3.1案例—模拟WorkQueue,实现一个队列绑定多个消费者

3.2消息预取限制

默认是消息平均分配,通过限制可以达到能者多劳的现象 。

3.3总结

4.发布订阅模型介绍

4.1加入交换机

FanoutExchange、DirectExchange、TopicExchange三类交换机

5.FanoutExchange

5.1案例,利用SpringAMQP演示FanoutExchange的使用

5.1.1步骤1

在consumer服务声明Exchange、Queue、Binding

5.1.2步骤2

在consumer服务声明两个消费者

5.1.3步骤3

在publisher服务发送消息到FanoutExchange

5.2总结

6.DirectExchange

7.TopicExchange

8.消息转换器



💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖

热门专栏推荐

🌈🌈计算机科学入门系列                     关注走一波💕💕

🌈🌈CSAPP深入理解计算机原理        关注走一波💕💕

🌈🌈微服务项目之黑马头条                 关注走一波💕💕

🌈🌈redis深度项目之黑马点评            关注走一波💕💕

🌈🌈Java面试八股文系列专栏            关注走一波💕💕

🌈🌈算法leetcode+剑指offer              关注走一波💕💕


总栏

🌈🌈​​​​​​JAVA后端技术栈                          关注走一波💕💕  

🌈🌈JAVA面试八股文​​​​​​                          关注走一波💕💕  

🌈🌈JAVA项目(含源码深度剖析)    关注走一波💕💕  

🌈🌈计算机四件套                               关注走一波💕💕  

🌈🌈算法                                        ​​​​​​     ​关注走一波💕💕  

🌈🌈必知必会工具集                           关注走一波💕💕

🌈🌈书籍网课笔记汇总                       关注走一波💕💕  

🌈🌈考试复习资料                              关注走一波💕💕  

🌈🌈C/C++技术栈                              关注走一波💕💕  

🌈🌈GO技术栈                                   关注走一波💕💕  


分栏

🌈🌈JAVA后端技术栈

🌈🌈spring                                      关注走一波💕💕         ​

🌈🌈redis                                        关注走一波💕💕

🌈🌈MySQL                               ​​​     关注走一波💕💕 

🌈🌈mybatis        ​​​​​​​        ​​​​​​​        ​​​​     ​​​​      关注走一波💕💕

🌈🌈MQ          ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        关注走一波💕💕

🌈🌈微服务                                     关注走一波💕💕

🌈🌈设计模式                                 关注走一波💕💕

🌈🌈分布式锁                                 关注走一波💕💕


🌈🌈JAVA八股文​​​​​​​​​​​​​​​​​​​​​JAVA面试八股文(redis、MySQL、框架、微服务、MQ、JVM、设计模式、并发编程、JAVA集合、常见技术场景)                                                          关注走一波💕💕    

                                                             


🌈🌈JAVA项目(含源码深度剖析)

🌈🌈黑马头条(微服务)             关注走一波💕💕

🌈🌈黑马点评(redis)               关注走一波💕💕


🌈🌈计算机四件套

🌈🌈计算机基础                           关注走一波💕💕

🌈🌈计算机基础                           关注走一波💕💕

🌈🌈计算机网络                           关注走一波💕💕

🌈🌈数据结构与算法                    关注走一波💕💕


🌈🌈算法

🌈🌈leetcode                              关注走一波💕💕

🌈🌈剑指offer                             关注走一波💕💕


🌈🌈必知必会工具集                   关注走一波💕💕


🌈🌈书籍网课笔记汇总

🌈🌈CSAPP笔记                        关注走一波💕💕

🌈🌈计算机科学速成课               关注走一波💕💕

🌈🌈CS自学指南                        关注走一波💕💕

🌈🌈读书笔记与每日记录           关注走一波💕💕


🌈🌈考试复习资料​​​​​​​                      关注走一波💕💕


🌈🌈C/C++技术栈                      关注走一波💕💕                           


🌈🌈GO技术栈                          关注走一波💕💕                                                    


📣非常感谢你阅读到这里,如果这篇文章对你有帮助,希望能留下你的点赞👍 关注❤收藏✅ 评论💬,大佬三连必回哦!thanks!!!
📚愿大家都能学有所得,功不唐捐!

  • 18
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值