《深入理解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 增加消费能力
相关推荐
知识搬运临时工16 小时前
Kafka 发 1 GiB 数据,用户态 CPU 只花 0.016 秒,总耗时反而慢了 11%
后端·kafka
一条泥憨鱼2 天前
【消息队列】ACK确认了什么:消息队列可靠投递的完整链路
java·后端·kafka·消息队列·rabbitmq
斯普信专业组2 天前
Kafka 消费者 poll() 流程与原理详解
kafka·流程图
ly76892 天前
幂等消费者与重试副作用:Kafka 端点接入时的去重边界
分布式·kafka·linq·apache camel·幂等消费者·重试副作用·去重边界
9624563 天前
容器 RUNNING,为什么中间件仍不可用?ActiveMQ 与 Kafka/ZooKeeper 恢复实录
中间件·kafka·activemq
斯普信专业组3 天前
Kafka 3.9.1 三节点集群部署方案(ZooKeeper 模式)
分布式·zookeeper·kafka
皮皮林5513 天前
Kafka 怎么保证消费只消费一次的?
kafka
茶海棠4 天前
Hadoop+zookeeper+HBase+Kafka集群搭建全流程
hadoop·zookeeper·kafka·hbase
后台模板学习4 天前
Kafka 与 RabbitMQ 在用户认证与权限管理场景
kafka·rabbitmq·linq