Kafka Source Code Analysis - tenji/ks GitHub Wiki

Kafka 源码解析

本地编译和运行 Kafka 源码请参考:https://github.com/tenji/ks/wiki/Build-and-run-Kafka-from-source-code

一、网络层

  1. Kafka NIO 网络通信模型

二、Client

2.1. Kafka Producer

  1. Producer 发送模型
  2. Producer Metadata 数据结构与读取、更新策略

2.2. Kafka Consumer

三、Server

3.1. GroupCoordinator

3.2. 日志管理

  1. LogManager 的设计与实现

3.3. Controller

  1. Controller 选举及服务启动流程
  2. 副本状态机与分区状态机
  3. Partition 副本迁移实现
  4. Topic 的新建/扩容/删除
  5. Broker 上线下线
  6. Controller 发送模型
  7. LeaderAndIsr 请求的处理

四、其它

4.1. Exactly Once Delivery and Transactional Messaging

4.2. Kafka 中的时间轮

五、参考链接