《深入理解kafka-核心设计与实践原理》

本文是对于**《深入理解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 重要的生产者参数

第三章:消费者

链接:《深入理解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 分区和性能的考量因素

补充:一些实际问题的理解

链接:《深入理解kafka》对于实际问题的理解

Q1:消息可靠性(不重不漏)

  • 1.1 如何保证消息不丢
  • 1.2 如何保证消息不重

Q2:积压/消费能力

  • 2.1 线上积压排查思路
  • 2.2 增加消费能力
相关推荐
每天一道题12 小时前
Kafka 是如何工作的?从 Broker、Partition、Offset 到 Consumer Group
分布式·kafka
ClouGence17 小时前
还在用命令行管理 Kafka?开源 CloudDM 让操作更简单
数据库·kafka·开源
Sayai18 小时前
Kafka 磁盘空间治理实战:retention 保留策略、log.dirs 在线扩容、分区跨盘迁移与不停机整体换盘
大数据·运维·分布式·kafka·消息队列
孤狼GPT19 小时前
ChatGPT、Codex排查实录:Kafka消费者日志明明显示处理成功,为什么同一条消息还是被重复消费?
kafka·springboot·codex·chatgptplus·chatgptpro
starzy19901 天前
KafkaProducer 源码深度剖析:batch 发送的条件
大数据·kafka
SL-staff2 天前
JVS私有化部署运维避坑指南:Kafka容灾、ES冷热分离、RabbitMQ可观测性三实战检查项
elasticsearch·kafka·jvs运维·es冷热分离·rabbitmq监控·中间件巡检·sre实践
starzy19902 天前
KafkaProducer 源码深度剖析:支撑高吞吐的数据结构设计
大数据·数据结构·kafka
starzy19903 天前
KafkaProducer 源码深度剖析:RecordAccumulator 封装消息流程
大数据·kafka
starzy19903 天前
KafkaProducer 加载元数据:一条 MetadataRequest 的完整旅程
大数据·kafka