极速掌握消息中间件 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

相关文章

动力节点 带你轻松玩转 Docker 技术课程

动力节点 带你轻松玩转 Docker 技术课程

Docker 是一个使用 Go 语言开发的开源的应用容器引擎,让开发者可以打包他们的应用以及依赖到一个可移植的容器中,然后发布到任何流行的机器上。Docker 的迅猛发展和全新理念,席卷了整个 IT 界,成为云时代的一颗新星。 动力节点推出的本套课程将你带你一步一步从基础到实践学习 Docker,了…

kubernetes(k8s)从入门到精通实战周末班

kubernetes(k8s)从入门到精通实战周末班

Kubernetes(k8s)从入门到精通实战周末班 + 特别包含了课程所需的课件软件资料,Kubernetes 技术已经成为了原生云技术的事实标准,它是目前基础软件领域最为热门的分布式调度和管理平台。于是,Kubernetes 也几乎成了时下开发工程师和运维工程师必备的技能之一。现在面试 k8s …

Java 设计模式(图解 + 框架源码分析 + 实战)

Java 设计模式(图解 + 框架源码分析 + 实战)

本课程定位是设计模式的入门课程,但是又聊了一下设计模式在 Spring 中的使用。对于要从事高级工程师及架构师工作,设计模式、数据结构和算法是必须要求灵活运用的,所以这类学生可以从本课程开始学习。 随着软件开发人员人数的增多,一些公司急需一些高端人才。作为一个高端人才,设计面向对象软件是必不可少的能…

2020 最新版大数据 Hive 核心技术课程

2020 最新版大数据 Hive 核心技术课程

hive 是基于 Hadoop 的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。hive 数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供 SQL 查询功能,能将 SQL 语句转变成 MapReduce 任务来执行。…
0 条回复 A文章作者 M管理员
发表垃圾评论,一经核查直接关小黑屋
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
全站搜索