跳转到主要内容

标签: Kafka

  • Kafka 可靠性与精确一次

    发布于 Kafka

    Kafka可靠性精确一次

    Kafka 的可靠性需要在 producer、broker、consumer 三端协同配置。下面从「不丢、不重、有序」三个目标展开。 Producer 端的可靠性 通过 acks 控制写入持久化级别: acks=0:发完即认为成功,可能丢消息,吞吐最高。 acks=1:leader 写入即成功,leader 宕机可能丢。 acks=all:ISR 全部同步才成功,最安全,配合 min.insync.replicas 防单点。 开启重试(retries)可应对瞬时失败,但会带来重复:网络抖动导致 …

    Kafka 的可靠性需要在 producer、broker、consumer 三端协同配置。下面从「不丢、不重、有序」三个目标展开。 Producer 端的可靠性 通过 acks 控制写入持久化级别: acks=0:发完即认为成功,可能丢消息,吞吐最高。 acks=1:leader 写入即成功,leader 宕机可能丢。 acks=all:ISR 全部同步才成功,最安全,配合 min.insync.replicas 防单点。 开启重试(retries)可应对瞬时失败,但会带来重复:网络抖动导致 …

  • Kafka 存储与消费模型

    发布于 Kafka

    Kafka消息队列消费模型

    Kafka 的高性能依赖于「分区日志 + 顺序写 + 批量拉取」的设计。理解存储与消费模型,才能合理配置并行度与避免重复消费。 Topic 与 Partition topic 是逻辑主题,partition 是物理并行单位,消息只追加写入分区末尾。 每个分区是一个有序、不可变的日志,由多个 segment 文件组成,并维护 offset(分区内唯一递增)。 分区数决定了消费的并行上限:一个分区同一时刻只被 group 内一个消费者消费。 Offset 与消费位移 消费者处理完消息后提交的位移称为 …

    Kafka 的高性能依赖于「分区日志 + 顺序写 + 批量拉取」的设计。理解存储与消费模型,才能合理配置并行度与避免重复消费。 Topic 与 Partition topic 是逻辑主题,partition 是物理并行单位,消息只追加写入分区末尾。 每个分区是一个有序、不可变的日志,由多个 segment 文件组成,并维护 offset(分区内唯一递增)。 分区数决定了消费的并行上限:一个分区同一时刻只被 group 内一个消费者消费。 Offset 与消费位移 消费者处理完消息后提交的位移称为 …