一、Kafka 简介
1.1 什么是 Kafka
1.2 Kafka 的历史
1.3 Kafka 的特点
- 高吞吐量
- 低延迟
- 高可用性
- 可扩展性
- 持久化
- 分布式
1.4 Kafka vs 传统消息队列
1.5 Kafka 应用场景
二、Kafka 核心概念
2.1 Producer(生产者)
2.2 Consumer(消费者)
2.3 Broker(代理)
2.4 Topic(主题)
2.5 Partition(分区)
2.6 Offset(偏移量)
- Offset 概念
- Offset 管理
- Offset 提交
2.7 Consumer Group(消费者组)
2.8 Replication(复制)
- 副本概念
- Leader 副本
- Follower 副本
- ISR(In-Sync Replicas)
2.9 Zookeeper
三、Kafka 架构
3.1 整体架构
3.2 存储架构
3.3 网络架构
3.4 高可用架构
四、Kafka 安装部署
4.1 环境准备
4.2 Kafka 单机部署
4.3 Kafka 集群部署
4.4 Docker 部署
4.5 Kubernetes 部署
4.6 配置文件详解
4.7 启动和停止
五、Kafka 命令行工具
5.1 Topic 管理
- 创建 Topic
- 删除 Topic
- 查看 Topic
- 修改 Topic
5.2 生产者和消费者
5.3 偏移量管理
5.4 其他工具命令
六、Kafka 生产者
6.1 生产者工作原理
6.2 消息发送方式
6.3 序列化器
6.4 分区器
6.5 可靠性保证
6.6 缓冲区管理
6.7 批量发送
6.8 压缩
七、Kafka 消费者
7.1 消费者工作原理
7.2 消费者组
7.3 订阅 Topic
7.4 消息消费
7.5 Offset 管理
7.6 反序列化器
7.7 消费者配置
7.8 再平衡监听器
八、Kafka 高级特性
8.1 消息压缩
8.2 消息批量处理
8.3 消息幂等性
8.4 事务消息
8.5 延迟消息
8.6 消息 ttl
九、Kafka 性能优化
9.1 Producer 优化
9.2 Consumer 优化
9.3 Broker 优化
9.4 网络优化
9.5 磁盘优化
9.6 JVM 优化
十、Kafka 监控
10.1 Kafka 自带指标
10.2 JMX 监控
10.3 常用监控工具
- Kafka Manager
- Burrow
- Prometheus + Grafana
- Kafka Exporter
10.4 关键监控指标
10.5 告警配置
十一、Kafka 安全
11.1 SASL 认证
11.2 ACL 权限控制
11.3 SSL/TLS 加密
11.4 网络安全
十二、Kafka 运维
12.1 日常维护
12.2 数据迁移
12.3 集群扩容
12.4 集群缩容
12.5 版本升级
12.6 备份恢复
12.7 故障排查
十三、Kafka 客户端开发
13.1 Java 客户端
- Producer API
- Consumer API
- Admin API
- Streams API
13.2 Spring Boot 集成
13.3 Go 客户端
13.4 Python 客户端
十四、Kafka Streams
14.1 Streams 简介
14.2 核心概念
- KStream
- KTable
- GlobalKTable
14.3 流处理 API
14.4 转换操作
14.5 状态存储
14.6 窗口操作
十五、Kafka Connect
15.1 Connect 简介
15.2 Connect 架构
15.3 Source Connector
15.4 Sink Connector
15.5 常用 Connector
15.6 自定义 Connector
十六、Kafka 实战案例
16.1 日志收集系统
16.2 实时数据处理
16.3 事件驱动架构
16.4 微服务通信
16.5 用户行为分析
十七、Kafka 最佳实践
17.1 Topic 设计
17.2 分区设计
17.3 消费设计
17.4 生产环境配置
17.5 监控告警
十八、Kafka 常见问题
18.1 消息丢失
18.2 消息重复
18.3 消息顺序
18.4 消息积压
18.5 Rebalance 问题
18.6 Zookeeper 问题
十九、Kafka 新特性
19.1 Kraft 模式(去 Zookeeper)
19.2 Tiered Storage
19.3 其他新特性