@venkateshdotdev: Kafka 很容易学。但一旦你真正要用它时,就难了。😅 分区、消费者组、偏移量、Kafka Connect、Streams…

X AI KOLs Timeline 新闻

摘要

一条推文分享了10个GitHub仓库,帮助学习和掌握Apache Kafka,强调了实际使用中的常见挑战。

Kafka 很容易学。 但一旦你真正要用它时,就难了。😅 分区、消费者组、偏移量、Kafka Connect、Streams、CDC... 这正是有趣的地方。 所以我收集了10个GitHub仓库,实际上能帮助你更好地掌握Kafka。 🧵👇 https://t.co/4hc93c2Cqn
查看原文
查看缓存全文

缓存时间: 2026/09/04 06:46

Kafka 很容易学。

直到你真正要用它的时候。😅

分区、消费者组、偏移量、Kafka Connect、Streams、CDC…

这时候事情就变得有趣起来了。

所以我收集了 10 个能真正帮助你精通 Kafka 的 GitHub 仓库。

🧵👇

  1. Apache Kafka

https://github.com/apache/kafka

如果你想真正理解 Kafka,而不只是会用 “producer.send()”,就从这里开始。

这个仓库包含了 Kafka 本身、文档、示例以及真正的实现。

不要只读 README。

试着去理解:

→ 生产者与消费者 → 分区 → 复制机制 → 消费者组 → KRaft → Kafka Streams

想了解 Kafka 底层究竟是如何运作的?

这个仓库值得深入探索。

  1. Kafka Streams 示例

https://github.com/confluentinc/kafka-streams-examples…

如果你在学习 Kafka Streams,不要只看教程。

去读那些能运行的示例。

你会发现关于以下内容的例子:

→ 过滤与转换 → 联接 → 聚合 → 有状态处理 → 窗口操作 → 测试 → 基于 Docker 的示例

选一个示例。

运行它。

然后尝试把它弄坏。

真正的学习就从这里开始。

  1. Debezium

https://github.com/debezium/debezium…

想了解 CDC 吗?

从这里开始。

Debezium 捕获数据库变更,并将其转换为应用程序可以消费的事件。

非常适合学习:

→ 变更数据捕获 → Kafka Connect → 数据库 → Kafka 流水线 → 事件驱动架构 → 事务日志

想象一下在 PostgreSQL 中更新一行数据…

然后看着这个变更变成一个 Kafka 事件。

这就是你在学习 Kafka 时应该尝试构建的东西。

  1. Debezium 示例

https://github.com/debezium/debezium-examples…

Debezium 的主仓库可能显得庞大。

这个仓库则更加注重实操。

它包含了以下方面的示例:

→ PostgreSQL CDC → 审计日志 → 缓存失效 → Kafka Connect → 数据流水线 → CloudEvents → RAG + CDC

如果你是那种通过动手构建而不是阅读来学习的人…

把这个仓库收藏起来。

  1. Kafbat UI

https://github.com/kafbat/kafka-ui

Kafka 命令行很强大。

但有时你只想直观地“看到”正在发生什么。

Kafbat UI 为你提供了一个用于检查 Kafka 集群的 Web 界面。

你可以探索:

→ Broker → 主题 → 分区 → 消费者组 → 消费者滞后 → 消息 → 连接器 → Schema Registry

如果你在本地调试 Kafka,这能为你节省大量时间。

你会使用 Kafka UI 还是坚持使用命令行?👀

  1. AKHQ

https://github.com/tchiotludo/akhq

另一个非常实用的 Kafka 图形界面工具。

AKHQ 让你管理和检查:

→ 主题 → 消息 → 消费者组 → Schema Registry → Kafka Connect

当你在本地运行 Kafka 并想直观了解集群内部情况时,它特别有用。

不要只生产消息。

看看 Kafka 到底是如何处理这些消息的。

  1. Strimzi

https://github.com/strimzi/strimzi-kafka-operator…

在 Kubernetes 上运行 Kafka?

你应该了解 Strimzi。

它提供了用于部署和管理 Kafka 集群的 Kubernetes Operator。

用它来学习:

→ 在 Kubernetes 上运行 Kafka → Operator → KafkaNodePool → 监听器 → 存储 → Kafka 用户与 ACL → Kafka Connect

这是 Kafka 开始从…

“本地 Docker 项目”

转变为

“生产基础设施”的起点。

  1. Kafka Proxy

https://github.com/grepplabs/kafka-proxy…

这是一个你可能在 Kafka 入门列表中不常见的仓库。

Kafka Proxy 帮助客户端连接 Kafka,而无需直接处理以下事务:

→ TLS 证书 → SASL 认证 → Broker 网络 → Kubernetes 网络

如果你对 Kafka 网络和安全感兴趣,这也是一个值得研究的优秀仓库。

有时候,学习一个系统的最佳方式…

是研究围绕它的问题。

  1. Confluent 示例

https://github.com/confluentinc/examples…

这基本上是一个 Kafka 示例的演练场。

你会发现关于以下内容的示例:

→ Kafka Connect → Schema Registry → Debezium → Kafka Streams → ksqlDB → Docker → 监控 → 事件驱动应用

不要试图全部过一遍。

选择一个你感兴趣的架构。

在本地构建它。

然后替换一个组件,看看会发生什么。👀

  1. Confluent Demo Scene

https://github.com/confluentinc/demo-scene…

这个仓库包含了大量实用的 Kafka 演示项目。

你会找到关于以下内容的项目:

→ Kafka Connect → Kafka Streams → ksqlDB → Kafka → Elasticsearch → Kafka → S3 → Kafka → 数据库 → 欺诈检测 → 交互式查询

当你不确定下一步该构建什么的时候,它非常完美。

打开一个演示。

运行它。

理解其架构。

然后构建你自己的版本。

这就是你如何从“我了解 Kafka”

进阶到

“我真正会用 Kafka”。

如果你在学习 Kafka,不要收藏这个帖子然后就忘了。😂

选择 一个 仓库。

克隆它。

在本地运行它。

搞坏点东西。

修复它。

然后接着研究下一个。

这会比你看完另一个 8 小时的课程更快地教会你 Kafka。

你准备从哪个仓库开始?👇

是的,但一旦实现,它能解决很多问题。

相似文章