谢鸡师
谢鸡师
8天前 · 2 人阅读

date: 2019-01-07 18:19:42
title: tech| kafka入门书籍导读

梳理了一下自己在入门 kafka 时读过的一些书, 希望能帮助到对 kafka 感兴趣的小伙伴.

涉及到的书籍:

  • kafka 权威指南
  • Kafka: The Definitive Guide (kafka 权威指南的英文原版)
  • Kafka入门与实践
  • kafka技术内幕

推荐的书籍阅读顺序:

  • 优先阅读 「kafka 权威指南」, 基于 kafka 0.8.0 版本, 并包含 0.9.0 版本中即将引入的重要特性. 整体内容的设计上要合理得多, 基础->核心->架构->原理->更多组件->管理运维, 一步步循序渐进, 用书中的话来说

给予一个技术书籍作者最好的赞赏莫过于这句话 -- 如果在一开始接触这门技术时能看到这本书就好了

推荐的阅读方式: 「精读」, 适合用来 构建 对 kafka 理解

  • 其次阅读 「Kafka入门与实践」, 基于 kafka 0.9.0 版本. 权威指南在讲解具体的组件的时候, 才会附上少量的代码, 并且配上详细的注释, 而这本书在讲解组件时细致入微, 不仅会有具体类/方法的代码呈现和分析, 多半还配有「流程图/运行图」 等辅助进行讲解, 并且在 实践 上有很多 「真知灼见」(或者说踩过一些坑). 如果希望在生产上使用, 很有必要快速的看一遍实践部分的相关内容.

推荐的阅读方式: 「快速阅读」掌握整本书的大致结构, 在感兴趣的组件部分, 推荐配合最新的源码一起阅读. 尤其推荐「实践」相关部分的内容.

  • 需要更深入细致的了解的话, 「kafka技术内幕」值得入手, 基于 kafka 0.9.0 版本(当时最新) 做的深入解读, 700多页的厚度会让你非常有「充实感」. 直到今年技术总监和我聊, 希望在 kafka 上做一些技术准备时, 才从书架上解开了尘封.

推荐阅读方式: 兴趣驱动是最好的, 作者就是这样的情况下慢慢积累出的这样厚厚一本书, 我对高可用和高性能部分比较感兴趣, 所以配合最新的源码, 精读了这部分内容

  • Kafka: The Definitive Guide, 关于英文原版, 我阅读英文并不流畅, 所以还是中文书籍为主, 英文原版多是「辅助作用」, 分享一条小 tips

在一些感觉「怪异」的地方查看一下原版, 往往有奇效

举几个奇效的例子:

  • kafka 中的 broker, 有本书里作者称之为 「代理」, 如果在原版里整体看过 kafka 各个组件及其英文, 就不容易被误导了
  • 关于复制, replication vs mirror: kafka 中有专门的 mirrorMaker 模块处理复制的任务, 而经典的数据库主从复制中, 多是使用 replication. 英文原版中就特意比较了这 2 个词

技术类书籍想要获得好的读书效果, 当然要动手. 值得参考的 github 项目:

  • apache/kafka: kafka 源码, 在深入的过程中, 看书可以很好的引路, 源码才是最好的老师
  • wurstmeister/kafka-docker: 目前使用量最高的 kafka docker 镜像. 虽然 kafka 也支持单机部署. 但是如果不能动手跑一个 kafka 集群进行实践, 「那和咸鱼有什么区别」
  • kafka-manager: 雅虎实现的 kafka 开源管理组件, 要上生产, 管理组件也必须得跟上才行

最后, 引用 「kafka 权威指南」中的话来总结: 同志仍需努力.

运行一个kafka集群需要付出很大的努力, 为了让kafka保持巅峰状态, 需要做大量的配置和维护

收藏 0
英文原版 组件 kafka 阅读 源码
评论 ( 0 )