当前位置:首页>资源>课程>[淘课程] 极速掌握消息中间件 RabbitMQ 课程分享

[淘课程] 极速掌握消息中间件 RabbitMQ 课程分享

淘淘宅课程出品,必属精品,关注公众号 [淘淘宅] 获取最新资源。

什么是消息队列?

消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。
消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来确保消息的可靠传递。消息发布者只管把消息发布到 MQ 中而不用管谁来取,消息使用者只管从 MQ 中取消息而不管是谁发布的。这样发布者和使用者都不用知道对方的存在。

为什么要使用消息队列?

从上面的描述中可以看出消息队列是一种应用间的异步协作机制,那什么时候需要使用 MQ 呢?
以常见的订单系统为例,用户点击【下单】按钮之后的业务逻辑可能包括:扣减库存、生成相应单据、发红包、发短信通知。在业务发展初期这些逻辑可能放在一起同步执行,随着业务的发展订单量增长,需要提升系统服务的性能,这时可以将一些不需要立即生效的操作拆分出来异步执行,比如发放红包、发短信通知等。这种场景下就可以用 MQ ,在下单的主流程(比如扣减库存、生成相应单据)完成之后发送一条消息到 MQ 让主流程快速完结,而由另外的单独线程拉取MQ的消息(或者由 MQ 推送消息),当发现 MQ 中有发红包或发短信之类的消息时,执行相应的业务逻辑。
以上是用于业务解耦的情况,其它常见场景包括最终一致性、广播、错峰流控等等。

RabbitMQ 的特点

RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现。
AMQP :Advanced Message Queue,高级消息队列协议。它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产品、开发语言等条件的限制。
RabbitMQ 最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。具体特点包括:
1、可靠性(Reliability)
RabbitMQ 使用一些机制来保证可靠性,如持久化、传输确认、发布确认。
2、灵活的路由(Flexible Routing)
在消息进入队列之前,通过 Exchange 来路由消息的。对于典型的路由功能,RabbitMQ 已经提供了一些内置的 Exchange 来实现。针对更复杂的路由功能,可以将多个 Exchange 绑定在一起,也通过插件机制实现自己的 Exchange 。
3、 消息集群(Clustering)
多个 RabbitMQ 服务器可以组成一个集群,形成一个逻辑 Broker 。
4、 高可用(Highly Available Queues)
队列可以在集群中的机器上进行镜像,使得在部分节点出问题的情况下队列仍然可用。
5、多种协议(Multi-protocol)
RabbitMQ 支持多种消息队列协议,比如 STOMP、MQTT 等等。
6、多语言客户端(Many Clients)
RabbitMQ 几乎支持所有常用语言,比如 Java、.NET、Ruby 等等。
7、 管理界面(Management UI)
RabbitMQ 提供了一个易的用户界面,使得用户可以监控和管理消息 Broker 的许多方面。
8、 跟踪机制(Tracing)
如果消息异常,RabbitMQ 提供了消息跟踪机制,使用者可以找出发生了什么。

课程目录

001.RabbitMQ: 什么是消息队列
002.RabbitMQ: 为什么使用消息队列
003.RabbitMQ: RabbitMQ的特点
004.RabbitMQ: 安装RabbitMQ
005.RabbitMQ: 启动和关闭服务
006.RabbitMQ: 插件添加
007.RabbitMQ: 用户管理
008.RabbitMQ: 权限分配
009.RabbitMQ: vhost
010.RabbitMQ: AMQP协议机制
011.RabbitMQ: 消息路由交换机类型
012.RabbitMQ: Direct类型交换机
013.RabbitMQ: Fanout类型交换机
014.RabbitMQ: Topic类型交换机
015.RabbitMQ: 消息发送
016.RabbitMQ: 消息发送测试
017.RabbitMQ: 消息接收
018.RabbitMQ: 消息接收测试
019.RabbitMQ: 交换机-direct-消息接收
020.RabbitMQ: 交换机-direct-消息发送
021.RabbitMQ: 交换机-fanout-消息接收
022.RabbitMQ: 交换机-fanout-消息发送
023.RabbitMQ: 交换机-topic-消息接收和发送
024.RabbitMQ: 交换机-fanout和topic使用场景对比
025.RabbitMQ: 事务性消息发送
026.RabbitMQ: 事务性消息接收
027.RabbitMQ: 发送者确认模式-普通确认
028.RabbitMQ: 发送者确认模式-批量确认
029.RabbitMQ: 发送者确认模式-异步确认
030.RabbitMQ: 消费者确认模式-手动确认消息
031.RabbitMQ: 消费者确认模式-事务对接收的影响以及防重复处理
032.RabbitMQ: SpringBoot集成RabbitMQ-direct发送消息
033.RabbitMQ: SpringBoot集成RabbitMQ-direct接收消息
034.RabbitMQ: SpringBoot集成RabbitMQ-异步监听接收消息
035.RabbitMQ: SpringBoot集成RabbitMQ-fanout接收消息
036.RabbitMQ: SpringBoot集成RabbitMQ-fanout发送消息
037.RabbitMQ: SpringBoot集成RabbitMQ-topic发送和接收消息
038.RabbitMQ: 集群-集群模式介绍
039.RabbitMQ: 集群-环境搭建
040.RabbitMQ: 集群-配置集群
041.RabbitMQ: 集群-SpringBoot链接集群
042.RabbitMQ: 集群-镜像集群配置

下载权限

查看
  • 免费下载
    评论并刷新后下载
    登录后下载
  • 其他用户
    办理会员后下载

查看演示

  • {{attr.name}}:
您当前等级为
登录后免费下载登录 黑名单用户禁止下载! 评论后刷新页面下载评论 支付以后下载 请先登录 您今天的下载次数(次)已用完,明日重置 支付积分以后下载立即支付 支付以后下载立即支付 您当前用户组不允许下载升级会员
您已获得下载权限 您可以每天下载资源次,今日剩余
重要声明

本站资源均来自网络分享,仅用于站内学习或测试研究使用。如有侵犯您的权益请私信留言,我们会第一时间审核。未经原版权作者许可,禁止用于任何商业途径,请在下载二十四小时内删除!


如果遇到需要升级才可获取的素材,建议升级对应的权限。 全站 90% 以上的素材“均有备份”。 本站资源均以主流网盘分享,以 7z、rar、分卷等常见的格式压缩,为防止有人压缩软件不支持 7z 格式,7z 解压,建议下载 7-zip,zip、rar 解压,建议下载 WinRAR 手机下载解压教程详见 帮助中心 。

课程

[淘课程] Spring Boot 升级版最新教程全面讲解课程

2021-01-18 08:00

课程

[淘课程] 三个月成为 Python 高级爬虫工程师

2021-01-19 12:30

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
站内搜索