今天起开始正式系统的学习kafka。
一个原因是工作需要,另一方面是想要完善自己的大数据技能栈。
作为目前很火的一个大数据组件,kafka一定是需要掌握的。
之后的一段时间,就会在这里记录下自己的kafka学习笔记,希望能够坚持下去~
新的笔记发布的时候,这里也会同步更新。
一起进步呀!
目录索引
- 什么是kafka?
- 为什么要使用kafka?
- 消息队列中的两种模式
- kafka的安装配置
- kafka的使用
- 开发环境的准备
- 使用Java,Scala开发生产端
- 使用Java,Scala开发消费端
- 生产场景因消费次序错乱引发的问题
- 当前或者曾经使用过的改善方案
- 测试哪些场景会存在消费次序错乱的问题
- 测试时需要导入的依赖
- 生产端和消费端的测试代码
- 各个场景下的测试情况
- 单分区生产,单线程消费
- 单分区生产,多线程消费
- 多分区生产,单线程消费
- 多分区生产,多线程消费
- 测试情况总结
- 自定义分区场景下的一些测试
- 自定义分区实现
- 自定义分区测试
- 使用Java提供的线程池ThreadPoolExecutor
- 使用SpringBoot提供的kafka api
- 合理的多线程消费方式
-
本文所涉及代码的github链接
-
必要的依赖导入
-
消费端监控程序详细代码介绍
- 实现Kafka消费端监控入口
- 配置文件解析
-
发送邮件
- 程序运行情况
- 控制台打印情况
- 邮件展示情况
-
参考资料
-
环境准备
-
Kafka2.1.1常用命令总结
- 启动Kafka
- 停止Kafka
- 查看kafka消息列表
- 创建topic
- 删除topic
- 消息生产
- 消息消费
- 查看某个topic详情
- 修改分区数
-
可能会用到的其它命令
- 通过命令行的方式修改Kafka topic配置
- 快速定位某个topic异常的分区
- 消费端从任意指定的偏移量开始消费数据
- 使用指定的消费者组进行消费
-
参考资料