Alibaba十年磨一剑:MQ技术手册,让你眼界大开
在当今的企业IT系统中,消息队列已然成为了内部通信的核心工具。它拥有如低耦合、可靠投递、广播、流量控制和最终一致性等多项功能,并已成为异步RPC的主要手段。尽管当前Kafka备受瞩目,但更广泛应用的还要数老牌的RabbitMQ和Alibaba自主研发的RocketMQ。而关于MQ,Alibaba无疑有着丰富的经验和话语权,尤其是关于RocketMQ的使用。今天,我们要分享的正是阿里P8的十年开发经
前言
在当今的企业IT系统中,消息队列已然成为了内部通信的核心工具。它拥有如低耦合、可靠投递、广播、流量控制和最终一致性等多项功能,并已成为异步RPC的主要手段。尽管当前Kafka备受瞩目,但更广泛应用的还要数老牌的RabbitMQ和Alibaba自主研发的RocketMQ。
而关于MQ,Alibaba无疑有着丰富的经验和话语权,尤其是关于RocketMQ的使用。今天,我们要分享的正是阿里P8的十年开发经验总结,这份总结凝结在了“RabbitMQ+RocketMQ”技术手册中。读完之后,你定会感叹这份手册的精湛与独特!
由于平台文章篇幅限制,细节内容过多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!需要的朋友可在文章末尾获取资料
一、RabbitMQ部分
1.RabbitMQ简介及入门
2.客户端开发向导
连接RabbitMQ
使用交换器和队列
发送消息
消费消息
消费端的确认与拒绝
关闭连接
3.RabbitMQ进阶
消息何去何从
过期时间(TTL)
死信队列
延迟队列
优先级队列
RPC实现
持久化
生产者确认
消费端要点介绍
消息传输保障
4.RabbitMQ管理
多租户与权限
用户管理
Web端管理
应用与集群管理
服务端状态
HTTPAPI接口管理
5.RabbitMQ配置
环境变量
配置文件
参数及策略
6.RabbitMQ运维
集群搭建
查看服务日志
单节点故障恢复
集群迁移
集群监控
7.跨越集群的界限
Federation
Shovel
8.RabbitMQ高阶
内存及磁盘告警
流控
镜像队列
9.网络分区
网络分区的意义
网络分区的判定
网络分区的模拟
网络分区的影响
手动处理网络分区
自动处理网络分区
案例:多分区情形
10.RabbitMQ扩展
消息追踪
负载均衡
二、RocketMQ部分
1.阅读源代码前的准备
获取和调试RocketMQ的源代码
RocketMQ源代码的目录结构
RocketMQ的设计理念和目标
2.RocketMQ路由中心NameServer
NameServer架构设计
NameSenver启动流程
NameSenve路由注册、故障剔除
3.RocketMQ消息发送
漫谈RocketMQ消息发送
认识RocketMQ消息
生产者启动流程
消息发送基本流程
批量消息发送
4.RocketMQ消息存储
存储概要设计
初识消息存储
消息发送存储流程
存储文件组织与内存映射
RocketMQ存储文件
实时更新消息消费队列与索引文
消息队列与索引文件恢复
文件刷盘机制
过期文件删除机制
5.RocketMQ消息消费
RocketMQ消息消费概述
消息消费者初探
消费者启动流程
消息拉取
消息队列负载与重新分布机制
消息消费过程
定时消息机制
消息过滤机制
顺序消息
6.消息过滤FilterServer
ClassFilten运行机制
FilterServer注册剖析
类过滤模式订阅机制
消息拉取
7.RocketMQ主从同步(HA)机制
RocketMQ主从复制原理
RocketMQ读写分离机制
8.RocketMQ事务消息
事务消息实现思想
事务消息发送流程
提交或回滚事务
事务消息回查事务状态
9.RocketMQ实战
消息批量发送
消息发送队列自选择
消息过滤
事务消息
Spring整合RocketMQ
Spring Cloud整合RocketMQ
RocketMQ监控与运维命令
应用场景分析
总结
在现实世界中,业务系统间的沟通常常需要RabbitMQ或RocketMQ这样的中间件来帮助实现。它们像一座桥梁,连接着不同的系统,实现了复杂的消息路由功能。而对于大数据的实时计算场景,Kafka则成为不可或缺的工具。它以简单的消费模型和超高的吞吐量,满足了大数据时代对实时性的高要求。对于我们Java开发者来说,掌握RabbitMQ和RocketMQ无疑是至关重要的。它们是我们技能库中的重要武器,能帮助我们解决实际开发中的许多问题。需要完整版PDF学习资源请扫描下方名片100%获取免费下载方式!
👇👇点击下方名片👇👇
更多推荐
所有评论(0)