
Kafka 消息队列学习路线 | 26 年最新零基础到精通一条龙(万人收藏⭐️)
编程导航学习网站:学编程、做项目、拿 Offer!
企业高频面试题库:开始刷题,面试遇原题!
精选简历模板大全:1 分钟搞定简历!
AI 资源导航网站:获取最新 AI 黑科技!
1 对 1 模拟面试:随时随地提升面试能力
Kafka 求职高频面试题:开始刷题
⭐️ 推荐观看 鱼皮的消息队列导学视频,快速了解消息队列学习路线和关键知识。
开篇介绍
Kafka 是由 LinkedIn 开发并开源的分布式流处理平台,现已成为 Apache 顶级项目。Kafka 因为高吞吐量(单机可达百万级 TPS)、低延迟、水平扩展能力强的特点,成为大数据领域最流行的消息队列。
Kafka 不仅是消息队列,更是分布式流处理平台。它既可以作为传统消息队列使用,也可以用于构建实时数据管道和流式应用,能够轻松处理 TB 级别的数据流。几乎所有大数据平台(如 Flink、Spark Streaming)都支持 Kafka 作为数据源。
这些,就是为什么要学习 Kafka 的原因。
学习前提
学习 Kafka 建议先掌握:
- 消息队列的基本概念。关于消息队列的详细学习,可以查看 消息队列学习路线(通用)
- Linux 基本操作。关于 Linux 的详细学习,可以查看 Linux 服务器学习路线
- 一门编程语言(Java、Python 等)。关于 Java 的详细学习,可以查看 Java 学习路线
学习路线图
就业方向
Kafka 主要应用于后端开发和大数据领域,相关的岗位包括:
- 大数据开发工程师:使用 Kafka 进行数据采集和传输
- 实时计算工程师:使用 Kafka + Flink/Spark 进行实时计算。关于 Flink 的详细学习,可以查看 Flink 实时计算学习路线;关于 Spark 的详细学习,可以查看 Spark 大数据学习路线
- 后端开发工程师:使用 Kafka 实现微服务间的异步通信
- 数据工程师:构建基于 Kafka 的数据管道
- 架构师:设计基于 Kafka 的大数据架构
整体学习建议
1)建议先查看 消息队列学习路线(通用),理解消息队列的基本概念和应用场景,再学习 Kafka。
2)掌握核心概念:Topic、Partition、Replica、Offset、Consumer Group 是 Kafka 的基础,一定要理解透彻。
3)理解高性能设计:Kafka 的顺序写入、批量处理、分区并行等设计都是为了追求极致性能,理解这些设计理念能帮助你更好地使用 Kafka。
4)建议使用 Docker 快速启动 Kafka 集群进行学习,避免繁琐的安装配置。
阶段 1:Kafka 基础(3-7 天,仅供参考)
学习目标
理解 Kafka 的基本概念和架构,掌握 Kafka 的安装和基本使用。
知识点
Kafka 核心概念【必学】:
- Broker:Kafka 服务器节点
- Topic:消息的主题/分类
- Partition:主题的分区
- Replica:分区的副本
- Producer:生产者
- Consumer:消费者
- Consumer Group:消费者组
- Offset:消息的偏移量
Kafka 架构【必学】:
- Kafka 集群架构
- ZooKeeper 的作用(3.0 之前)
- KRaft 模式(3.0+ 版本,不依赖 ZooKeeper)
- Partition 的分布和副本机制
- Leader 和 Follower
Kafka 安装和启动【必学】:
- 单机版安装
- 集群版安装【建议学】
- 配置文件说明
- 启动和停止 Kafka
基本操作【必学】:
- 创建 Topic
- 查看 Topic 列表
- 查看 Topic 详情
- 删除 Topic
学习建议
1)Kafka 3.0+ 版本引入了 KRaft 模式,可以不依赖 ZooKeeper,简化了部署。建议学习 KRaft 模式,这是 Kafka 的未来方向。
2)Partition 是 Kafka 实现高吞吐量的关键,一个 Topic 可以有多个 Partition,每个 Partition 可以并行读写。理解 Partition 的工作原理非常重要。
3)Kafka 的安装相对复杂,建议使用 Docker 快速启动 Kafka 集群进行学习。
4)这个阶段要多动手实践,创建 Topic、发送消息、消费消息,熟悉 Kafka 的基本操作。
学习资源
- 黑马程序员 Kafka 教程:大数据企业级 Kafka
- Kafka 从入门到实战:31 集全套教程
- Kafka 官方文档:官方文档
