《深入理解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 增加消费能力
相关推荐
此时不提桶,更待何时2 天前
06-09-A-Kafka架构与存储原理详解
架构·kafka·linq
醉颜凉2 天前
Kafka 与 RabbitMQ/RocketMQ 选型对比:场景匹配、性能基准与迁移成本
kafka·消息队列·rabbitmq·rocketmq·中间件选型
筑梦之路3 天前
K8S yaml文件部署kafka集群(Kraft模式)——筑梦之路
容器·kafka·kubernetes
筑梦之路3 天前
Kafka KRaft 模式 Kubernetes 部署手册(StatefulSet + apache/kafka 官方镜像)——筑梦之路
kafka·kubernetes·apache
智码看视界4 天前
技术选型指南:Pulsar vs Kafka:消息队列选型终极对比与压测
kafka·消息队列·pulsar·消息中间件·流处理·高吞吐·架构选型
俊哥大数据4 天前
Flink1.20.3 实时消费 Kafka 数据并解析入湖 Paimon1.4.2 全流程实战
分布式·flink·kafka·数据湖·paimon
今年下半年5 天前
记录一次IBMS物联网项目的架构设计及技术栈应用
物联网·websocket·网络协议·tcp/ip·微服务·udp·kafka
Nano叶落11 天前
Kafka 消费积压排查入门:Docker 搭环境亲手制造一次 ‘消息堵死‘,10 分钟看懂 Lag
kafka
吉甫作诵12 天前
Kafka 集群安装与运维实战:消费组排查、Offset 重置与副本重分配
大数据·运维·分布式·kafka·消息队列
imDwAaY12 天前
消息队列四大核心问题:顺序性、幂等性、可靠性与一致性
学习·kafka·rabbitmq