导图社区 最强Kafka3.x从入门到精通思维导图
最强Kafka3.x从入门到精通思维导图,kafaka 总计结构,包含入门,外部系统集成,生产调优,源码分析等。
编辑于2023-11-06 21:19:48Kafka3.x从入门到精通
第一篇 入门
第1章 Kafka概述
1.1 定义
1.2 消息队列
1.2.1 传统消息队列的应用场景
1.2.2 消息队列的两种模式
1.3 Kafka基础架构
第2章 Kafka快速入门
2.1 安装部署
2.1.1 集群规划
2.1.2 集群部署
2.1.3 集群启停脚本
2.2 Kafka命令行操作
2.2.1 主题命令行操作
2.2.2 生产者命令行操作
2.2.3 消费者命令行操作
第3章 Kafka生产者
3.1 生产者消息发送流程
3.1.1 发送原理
3.1.2 生产者重要参数列表
3.2 异步发送API
3.2.1 普通异步发送
3.2.2 带回调函数的异步发送
3.3 同步发送API
3.4 生产者分区
3.4.1 分区好处
3.4.2 生产者发送消息的分区策略
3.4.3 自定义分区器
3.5 生产经验——生产者如何提高吞吐量
3.6 生产经验——数据可靠性
3.7 生产经验——数据去重
3.7.1 数据传递语义
3.7.2 幂等性
3.7.3 生产者事务
3.8 生产经验——数据有序
3.9 生产经验——数据乱序
第4章 Kafka Broker
4.1 Kafka Broker工作流程
4.1.1 Zookeeper存储的Kafka信息
4.1.2 Kafka Broker总体工作流程
4.1.3 Broker重要参数
4.2 生产经验——节点服役和退役
4.2.1 服役新节点
4.2.2 退役旧节点
4.3 Kafka 副本
4.3.1 副本基本信息
4.3.2 Leader选举流程
4.3.3 Leader和Follower故障处理细节
4.3.4 分区副本分配
4.3.5 生产经验——手动调整分区副本存储
4.3.6 生产经验——Leader Partition负载平衡
4.3.7 生产经验——增加副本因子
4.4 文件存储
4.4.1 文件存储机制
4.4.2 文件清理策略
4.5 高效读写数据
第5章 Kafka消费者
5.1 Kafka消费方式
5.2 Kafka消费者工作流程
5.2.1 消费者总体工作流程
5.2.2 消费者组原理
5.2.3 消费者重要参数
5.3 消费者API
5.3.1 独立消费者案例(订阅主题)
5.3.2 独立消费者案例(订阅分区)
5.3.3 消费者组案例
5.4 生产经验——分区的分配以及再平衡
5.4.1 Range以及再平衡
5.4.2 RoundRobin以及再平衡
5.4.3 Sticky以及再平衡
5.5 offset位移
5.5.1 offset的默认维护位置
5.5.2 自动提交offset
5.5.3 手动提交offset
5.5.4 指定Offset消费
5.5.5 指定时间消费
5.5.6 漏消费和重复消费
5.6 生产经验——消费者事务
5.7 生产经验——数据积压(消费者如何提高吞吐量)
第6章 Kafka-Eagle监控
6.1 MySQL环境准备
6.2 Kafka环境准备
6.3 Kafka-Eagle安装
6.4 Kafka-Eagle页面操作
第7章 Kafka- Kraft模式
7.1 Kafka- Kraft架构
7.2 Kafka- Kraft集群部署
7.3 Kafka- Kraft集群启动停止脚本
第二篇 外部系统集成
第1章 集成Flume
1.1 Flume生产者
1.2 Flume消费者
第2章 集成Flink
2.1 Flink生产者
2.2 Flink消费者
第3章 集成SpringBoot
3.1 SpringBoot生产者
3.2 SpringBoot消费者
第4章 集成Spark
4.1 Spark生产者
4.2 Spark消费者
第三篇 生产调优手册
第1章 Kafka硬件配置选择
1.1 场景说明
1.2 服务器台数选择
1.3 磁盘选择
1.4 内存选择
1.5 CPU选择
1.6 网络选择
第2章 Kafka生产者
2.1 Kafka生产者核心参数配置
2.2 生产者如何提高吞吐量
2.3 数据可靠性
2.4 数据去重
2.5 数据有序
2.6 数据乱序
第3章 Kafka Broker
3.1 Broker核心参数配置
3.2 服役新节点/退役旧节点
3.3 增加分区
3.4 增加副本因子
3.5 手动调整分区副本存储
3.6 Leader Partition负载平衡
3.7 自动创建主题
第4章 Kafka消费者
4.1 Kafka消费者核心参数配置
4.2 消费者再平衡
4.3 指定Offset消费
4.4 指定时间消费
4.5 消费者事务
4.6 消费者如何提高吞吐量
第5章 Kafka总体
5.1 如何提升吞吐量
5.2 数据精准一次
5.3 合理设置分区数
5.4 单条日志大于1m
5.5 服务器挂了
5.6 集群压力测试
第四篇 源码解析
第1章 源码环境准备
1.1 源码下载地址
1.2 安装JDK&Scala
1.3 加载源码
1.4 安装gradle
第2章 生产者源码
2.1 初始化
2.1.1 程序入口
2.1.2 生产者main线程初始化
2.1.3 生产者sender线程初始化
2.2 发送数据到缓冲区
2.2.1 发送总体流程
2.2.2 分区选择
2.2.3 发送消息大小校验
2.2.4 内存池
2.3 sender线程发送数据
第3章 消费者源码
3.1 初始化
3.1.1 程序入口
3.1.2 消费者初始化
3.2 消费者订阅主题
3.3 消费者拉取和处理数据
3.3.1 消费者/消费者组初始化
3.3.2 拉取数据
3.3.3 拦截器处理数据
3.4 消费者Offset提交
3.4.1 手动同步提交Offset
3.4.2 手动异步提交Offset
第4章 服务器源码
4.1 程序入口
浮动主题
Kafka3.x入门
第1章 Kafka概述
1.1 定义
1.2 消息队列
1.2.1 传统消息队列的应用场景
1.2.2 消息队列的两种模式
1.3 Kafka基础架构
第2章 Kafka快速入门
2.1 安装部署
2.1.1 集群规划
2.1.2 集群部署
2.1.3 集群启停脚本
2.2 Kafka命令行操作
2.2.1 主题命令行操作
2.2.2 生产者命令行操作
2.2.3 消费者命令行操作
第3章 Kafka生产者
3.1 生产者消息发送流程
3.1.1 发送原理
3.1.2 生产者重要参数列表
3.2 异步发送API
3.2.1 普通异步发送
3.2.2 带回调函数的异步发送
3.3 同步发送API
3.4 生产者分区
3.4.1 分区好处
3.4.2 生产者发送消息的分区策略
3.4.3 自定义分区器
3.5 生产经验——生产者如何提高吞吐量
3.6 生产经验——数据可靠性
3.7 生产经验——数据去重
3.7.1 数据传递语义
3.7.2 幂等性
3.7.3 生产者事务
3.8 生产经验——数据有序
3.9 生产经验——数据乱序
第4章 Kafka Broker
4.1 Kafka Broker工作流程
4.1.1 Zookeeper存储的Kafka信息
4.1.2 Kafka Broker总体工作流程
4.1.3 Broker重要参数
4.2 生产经验——节点服役和退役
4.2.1 服役新节点
4.2.2 退役旧节点
4.3 Kafka 副本
4.3.1 副本基本信息
4.3.2 Leader选举流程
4.3.3 Leader和Follower故障处理细节
4.3.4 分区副本分配
4.3.5 生产经验——手动调整分区副本存储
4.3.6 生产经验——Leader Partition负载平衡
4.3.7 生产经验——增加副本因子
4.4 文件存储
4.4.1 文件存储机制
4.4.2 文件清理策略
4.5 高效读写数据
第5章 Kafka消费者
5.1 Kafka消费方式
5.2 Kafka消费者工作流程
5.2.1 消费者总体工作流程
5.2.2 消费者组原理
5.2.3 消费者重要参数
5.3 消费者API
5.3.1 独立消费者案例(订阅主题)
5.3.2 独立消费者案例(订阅分区)
5.3.3 消费者组案例
5.4 生产经验——分区的分配以及再平衡
5.4.1 Range以及再平衡
5.4.2 RoundRobin以及再平衡
5.4.3 Sticky以及再平衡
5.5 offset位移
5.5.1 offset的默认维护位置
5.5.2 自动提交offset
5.5.3 手动提交offset
5.5.4 指定Offset消费
5.5.5 指定时间消费
5.5.6 漏消费和重复消费
5.6 生产经验——消费者事务
5.7 生产经验——数据积压(消费者如何提高吞吐量)
第6章 Kafka-Eagle监控
6.1 MySQL环境准备
6.2 Kafka环境准备
6.3 Kafka-Eagle安装
6.4 Kafka-Eagle页面操作
第7章 Kafka- Kraft模式
7.1 Kafka- Kraft架构
7.2 Kafka- Kraft集群部署
7.3 Kafka- Kraft集群启动停止脚本
Kafka3.x外部系统集成
第1章 集成Flume
1.1 Flume生产者
1.2 Flume消费者
第2章 集成Flink
2.1 Flink生产者
2.2 Flink消费者
第3章 集成SpringBoot
3.1 SpringBoot生产者
3.2 SpringBoot消费者
第4章 集成Spark
4.1 Spark生产者
4.2 Spark消费者
Kafka3.x生产调优手册
第1章 Kafka硬件配置选择
1.1 场景说明
1.2 服务器台数选择
1.3 磁盘选择
1.4 内存选择
1.5 CPU选择
1.6 网络选择
第2章 Kafka生产者
2.1 Kafka生产者核心参数配置
2.2 生产者如何提高吞吐量
2.3 数据可靠性
2.4 数据去重
2.5 数据有序
2.6 数据乱序
第3章 Kafka Broker
3.1 Broker核心参数配置
3.2 服役新节点/退役旧节点
3.3 增加分区
3.4 增加副本因子
3.5 手动调整分区副本存储
3.6 Leader Partition负载平衡
3.7 自动创建主题
第4章 Kafka消费者
4.1 Kafka消费者核心参数配置
4.2 消费者再平衡
4.3 指定Offset消费
4.4 指定时间消费
4.5 消费者事务
4.6 消费者如何提高吞吐量
第5章 Kafka总体
5.1 如何提升吞吐量
5.2 数据精准一次
5.3 合理设置分区数
5.4 单条日志大于1m
5.5 服务器挂了
5.6 集群压力测试
Kafka3.x源码解析
第1章 源码环境准备
1.1 源码下载地址
1.2 安装JDK&Scala
1.3 加载源码
1.4 安装gradle
第2章 生产者源码
2.1 初始化
2.1.1 程序入口
2.1.2 生产者main线程初始化
2.1.3 生产者sender线程初始化
2.2 发送数据到缓冲区
2.2.1 发送总体流程
2.2.2 分区选择
2.2.3 发送消息大小校验
2.2.4 内存池
2.3 sender线程发送数据
第3章 消费者源码
3.1 初始化
3.1.1 程序入口
3.1.2 消费者初始化
3.2 消费者订阅主题
3.3 消费者拉取和处理数据
3.3.1 消费者/消费者组初始化
3.3.2 拉取数据
3.3.3 拦截器处理数据
3.4 消费者Offset提交
3.4.1 手动同步提交Offset
3.4.2 手动异步提交Offset
第4章 服务器源码
4.1 程序入口