Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了

前言

消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。虽然说,目前状况是Kafka更为火热,但更为广泛的应该还属老牌的RabbtiMQ和Alibaba自主研发的RocketMQ。

关于MQ相关的内容,Alibaba肯定还是很有话语权的,尤其是关于RocketMQ的使用,所以今天我们要分享的内容,实际上就是阿里P8的十年开发经验总结,写出来的这本“RabbitMQ+RocketMQ”技术手册,看完你也不得不感叹这份极品手册啊!

由于文章篇幅有限,下文中的内容只展示这份手册的目录以及部分内容截图

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第1张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

一、RabbitMQ部分

1.RabbitMQ简介及入门

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第2张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第3张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

2.客户端开发向导

  • 连接RabbitMQ

  • 使用交换器和队列

  • 发送消息

  • 消费消息

  • 消费端的确认与拒绝

  • 关闭连接

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第4张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第5张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

3.RabbitMQ进阶

  • 消息何去何从

  • 过期时间(TTL)

  • 死信队列

  • 延迟队列

  • 优先级队列

  • RPC实现

  • 持久化

  • 生产者确认

  • 消费端要点介绍

  • 消息传输保障

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第6张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第7张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

4.RabbitMQ管理

  • 多租户与权限

  • 用户管理

  • Web端管理

  • 应用与集群管理

  • 服务端状态

  • HTTPAPI接口管理

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第8张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

5.RabbitMQ配置

  • 环境变量

  • 配置文件

  • 参数及策略

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第9张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第10张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

6.RabbitMQ运维

  • 集群搭建

  • 查看服务日志

  • 单节点故障恢复

  • 集群迁移

  • 集群监控

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第11张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第12张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

7.跨越集群的界限

  • Federation

  • Shovel

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第13张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第14张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

8.RabbitMQ高阶

  • 内存及磁盘告警

  • 流控

  • 镜像队列

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第15张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第16张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

9.网络分区

  • 网络分区的意义

  • 网络分区的判定

  • 网络分区的模拟

  • 网络分区的影响

  • 手动处理网络分区

  • 自动处理网络分区

  • 案例:多分区情形

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第17张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第18张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

10.RabbitMQ扩展

  • 消息追踪

  • 负载均衡

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第19张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第20张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

二、RocketMQ部分

1.阅读源代码前的准备

  • 获取和调试RocketMQ的源代码

  • RocketMQ源代码的目录结构

  • RocketMQ的设计理念和目标

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第21张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第22张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

2.RocketMQ路由中心NameServer

  • NameServer架构设计

  • NameSenver启动流程

  • NameSenve路由注册、故障剔除

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第23张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第24张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

3.RocketMQ消息发送

  • 漫谈RocketMQ消息发送

  • 认识RocketMQ消息

  • 生产者启动流程

  • 消息发送基本流程

  • 批量消息发送

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第25张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第26张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

4.RocketMQ消息存储

  • 存储概要设计

  • 初识消息存储

  • 消息发送存储流程

  • 存储文件组织与内存映射

  • RocketMQ存储文件

  • 实时更新消息消费队列与索引文

  • 消息队列与索引文件恢复

  • 文件刷盘机制

  • 过期文件删除机制

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第27张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第28张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

5.RocketMQ消息消费

  • RocketMQ消息消费概述

  • 消息消费者初探

  • 消费者启动流程

  • 消息拉取

  • 消息队列负载与重新分布机制

  • 消息消费过程

  • 定时消息机制

  • 消息过滤机制

  • 顺序消息

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第29张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第30张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

6.消息过滤FilterServer

  • ClassFilten运行机制

  • FilterServer注册剖析

  • 类过滤模式订阅机制

  • 消息拉取

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第31张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第32张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

7.RocketMQ主从同步(HA)机制

  • RocketMQ主从复制原理

  • RocketMQ读写分离机制

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第33张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第34张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

8.RocketMQ事务消息

  • 事务消息实现思想

  • 事务消息发送流程

  • 提交或回滚事务

  • 事务消息回查事务状态

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第35张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第36张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

9.RocketMQ实战

  • 消息批量发送

  • 消息发送队列自选择

  • 消息过滤

  • 事务消息

  • Spring整合RocketMQ

  • Spring Cloud整合RocketMQ

  • RocketMQ监控与运维命令

  • 应用场景分析

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第37张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

Alibaba开发十年,写出这本“MQ技术手册”,看完我愣住了_第38张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

总结

实际上一般业务系统之间通信就是会采用RabbitMQ/RocketMQ,需要复杂的消息路由功能的支撑。大数据的实时计算场景才会采用Kafka,需要简单的消费模型,但是超高的吞吐量。

所以,作为Java开发,以RabbitMQ和RocketMQ为主来进行学习是比较重要的。最后,你再试问一下自己,对MQ到底掌握多少?会用到什么程度了呢?如果还不够,那就不能停下学习的脚步。

 资源获取:
大家 点赞、收藏、关注、评论啦 、 查看 微信公众号获取联系方式
精彩专栏推荐订阅:下方专栏
每天学四小时:Java+Spring+JVM+分布式高并发,架构师指日可待

你可能感兴趣的:(程序员,Java,编程,java-rabbitmq,rabbitmq,java)