课程地址:0.第三章介绍_哔哩哔哩_bilibili (视频89~148,RocketMQ高级功能&源码分析) 目录 第三部分 高级功能 第1节 消息存储 1.1 消息的存储和发送 1.2 消息存储结构(文件系统) 1.3 刷盘机制 第2节 高可用性机制 2.1 消息消费高可用 2.2 消息发送高可用 面试题:RocketMQ如何保证高可用性? 2.3 消息主从复制 第3节 负载均衡 3.1 Producer负载均衡 3.2 Consumer负载均衡 第4节 消息重试 4.1 顺序消息的重试 4.2 无序消息的重试 1)重试次数 2)是否重试的配置方式 ①消费失败后,进行重试的配置方式 ②消费失败后,不重试配置方式 ③自定义消息最大重试次数 ④获取消息重试次数 第5节 死信队列 第6节 消费幂等 6.1 消费幂等的必要性 6.2 处理方式 第四部分 源码分析 第1节 环境搭建 调试 1)启动NameServer 2)单节点启动Broker 3)发送&接收消息 4)一条消息包含的字段从哪看★★★ 第2节 NameServer源码分析 2.1 架构设计 2.2 启动流程 2.3 路由管理 2.3.1 路由元信息 2.3.2 路由注册 2.3.3 路由删除 2.3.4 路由发现 2.4 小结 第3节 Producer源码分析 3.1 方法和属性 1)主要方法介绍 2)属性介绍 3.2 启动流程 3.3 消息发送★★★ 3.3.1 消息发送的4个步骤 3.3.2 特别说一下第3步“选择队列” 3.3.3 特别说一下第4步“消息发送” 3.4 批量消息发送 第4节 消息存储源码分析 4.1 消息存储核心类 4.2 消息存储流程 4.3 存储文件 4.4 存储文件内存映射 4.5 实时更新消息消费队列与索引文件 1)转发到ConsumerQueue 2)转发到Index 4.6 消息队列和索引文件恢复 4.7 刷盘机制 同步刷盘 异步刷盘 4.8 过期文件删除机制 4.9 小结 第5节 Consumer源码分析 5.1 消息消费概述 5.2 消息消费初探 5.3 消费者启动流程 5.4 消息拉取★★★ 1)PullMessageService实现机制 2)ProcessQueue实现机制 3)消息拉取基本流程 1.客户端发起拉取请求 2.消息服务端Broker组装消息 3.消息拉取客户端处理消息 4.消息拉取总结 4)消息拉取长轮询机制分析