本文是对于**《深入理解kafka-核心设计与实践原理》**的笔记和提纲整理
主要用于复习和知识点快速复习
第一章:概念
链接:《深入理解kafka-核心设计与实践原理》第一章:概念
第一章:概念
- [1.1] 基本概念
- [1.1.1] 基本角色与概念
- [1.1.2] 其他概念(AR、ISR、OSR、HW、LEO)
- [1.2] 概念图
第二章:生产者
链接:《深入理解kafka-核心设计与实践原理》第二章:生产者
第二章:生产者
- [2.1] api使用
- [2.1.1] 生产者:KafkaProducer
- [2.1.2] 消息体:ProducerRecord
- [2.1.3] 序列化器:Serializer
- [2.1.4] 分区器:Partitioner
- [2.1.5] 拦截器:Interceptor
- [2.2] 生产者客户端的原理
- [2.2.1] 整体架构
- [2.2.2] 元数据的更新
- [2.3] 重要的生产者参数
- [2.3.1] acks
- [2.3.2] max.request.size
- [2.3.3] retries和retry.backoff.ms
- [2.3.4] 其他参数
第三章:消费者
链接:《深入理解kafka-核心设计与实践原理》第三章:消费者
第三章:消费者
- [3.1] 消费者与消费组
- [3.1.1] 消费者(Consumer)
- [3.1.2] 消费组(Consumer Group)
- [3.1.3] 消息投递模式
- [3.2] 客户端开发
- [3.2.1] 必要的配置参数
- [3.2.2] 订阅主题与分区
- [3.2.3] 反序列化
- [3.2.4] 消费消息
- [3.2.5] 位移提交
- [3.2.5.1] offset
- [3.2.5.2] 消费后的提交方式:自动提交/手动提交
- [3.2.6] 控制/关闭消费
- [3.2.7] 指定位移消费
- [3.2.8] 再均衡(Rebalance)
- [3.2.9] 消费者拦截器
- [3.2.10] 多线程实现
- [3.3] 重要的消费者参数
第四章:主题和分区
链接:《深入理解kafka-核心设计与实践原理》第四章:主题和分区
第四章:主题和分区
- [4.1] 主题管理
- [4.1.1] 创建主题
- [4.2] KafkaAdminClient
- [4.3] 分区管理
- [4.3.1] 优先副本的选举
- [4.3.2] 分区重分配(Partition Reassignment)
- [4.3.3] 复制限流
- [4.3.4] 修改副本因子
- [4.4] 分区和性能的考量因素
补充:一些实际问题的理解
Q1:消息可靠性(不重不漏)
- 1.1 如何保证消息不丢
- 1.2 如何保证消息不重
Q2:积压/消费能力
- 2.1 线上积压排查思路
- 2.2 增加消费能力