写点什么

不愧是阿里内部供应的 Kafka 笔记,深入浅出,全是干货

作者:小小怪下士
  • 2022-12-30
    湖南
  • 本文字数:1194 字

    阅读完需:约 4 分钟

前言

分布式,是程序员必备技能之一,在面试过程中属于必备类的,在工作中更是会经常用到。而 Kafka 是一个分布式的基于发布订阅的消息队列,目前它的魅力是无穷的,对于 Kafka 的奥秘,还需要我们细细去探寻。


要谈对 Kafka 有多熟悉,我相信还是阿里的大佬们最有发言权,所以今天分享的内容,就是 Alibaba 内部供应的“限量笔记”,关于 Kafka 的精髓全部写在这里面了,不得不感叹:不愧是 Alibaba 的技术官啊,真的服了!


关于这份 Kafka 限量笔记,我只能在文章中展示部分的章节内容和核心截图,如果你需要完整的 pdf 版本,可以【直接点击此处】领取哦。


一、对 Kafka 的认识

1.Kafka 的基本概念



2.安装与配置



3.生产与消费



4.服务端参数配置


二、生产者

1.客户端开发


  • 必要的参数配置

  • 消息的发送

  • 序列化

  • 分区器

  • 生产者拦截器



2.原理分析


  • 整体架构

  • 元数据的更新



3.重要的生产者参数


三、消费者

1.消费者与****消费组



2.客户端开发


  • 必要的参数配置

  • 订阅主题与分区

  • 反序列化

  • 消息消费

  • 位移提交

  • 控制或关闭消费

  • 指定位移消费

  • 再均衡

  • 消费者拦截器

  • 多线程实现

  • 重要的消费者参数


四、主题与分区

1.主题的管理


  • 创建主题

  • 分区副本的分配

  • 查看主题

  • 修改主题

  • 配置管理

  • 主题端参数

  • 删除主题



2.初识 KafkaAdminCilent


  • 基本使用

  • 主题合法性验证



3.分区的管理


  • 优先副本的选举

  • 分区重分配

  • 复制限流

  • 修改副本因子



4.如何选择合适的分区数


  • 性能测试工具

  • 分区数越多吞吐量就越高吗

  • 分区数的上限

  • 考量因素


五、日志存储

1.文件目录布局



2.日志格式的演变


  • v0 版本

  • v1 版本

  • 消息压缩

  • 变长字段

  • v2 版本



3.日志索引


  • 偏移量索引

  • 时间戳索引



4.日志清理


  • 日志删除

  • 日志压缩



5.磁盘存储


  • 页缓存

  • 磁盘 I/O 流程

  • 零拷贝


六、深入服务端

1.协议设计



2.时间轮



3.延时操作



4.控制器



5.参数解密


七、深入客户端

1.分区分配策略



2.消费者协调器和组协调器



3._consumer_offsets 剖析



4.事务


八、可靠性探究

1.副本剖析



2.日志同步机制



3.可靠性分析


[图片上传失败...(image-3b0595-1672367716850)]

九、Kafka 应用

1.命令行工具



2.Kafka Connect



3.Kafka Mirror Maker



4.Kafka Streams


十、Kafka 监控

1.监控数据的来源



2.消费滞后



3.同步失效分区



4.监控指标说明



5.监控模块


十一、高级应用

1.过期时间(TTL)



2.延时队列



3.死信队列和重试队列



4.消息路由



5.消息轨迹



6.消息审计



7.消息代理



8.消息中间件选型


十二、Kafka 与 Spark 的集成

1.Spark 的安装及简单应用



2.Spark 编程模型



3.Spark 的运行结构



4.Spark Streaming 简介



5.Kafka 与 Spark Streaming 的整合



6.Spark SQL



7.Structured Streaming



8.Kafka 与 Structured Streaming 的整合


总结

我们总是喜欢瞻仰大厂的大神们,但实际上大神也不过凡人,与菜鸟程序员相比,也就多花了几分心思,如果你再不努力,差距也只会越来越大。实际上,作为程序员,丰富自己的知识储备,提升自己的知识深度和广度是很有必要的,在我看来,自己付出多少,回报就有多少。


Kafka 的学习,并没有想象中那么难,这份 Kafka 限量笔记里面的内容,对你学习 Kafka 必有启发和帮助。如果你需要这份完整版的 Kafka 笔记,只需你多多支持我这篇文章。

用户头像

还未添加个人签名 2022-09-04 加入

热衷于分享java技术,一起交流学习,探讨技术。 需要Java相关资料的可以+v:xiaoyanya_1

评论

发布
暂无评论
不愧是阿里内部供应的Kafka笔记,深入浅出,全是干货_Java_小小怪下士_InfoQ写作社区