美文网首页
kafka 副本机制

kafka 副本机制

作者: Atomas | 来源:发表于2020-05-26 15:40 被阅读0次

    定义(definition)

        副本是在topic分区这个层级上定义的,它是只能追加写消息的日志 (AOF)

    角色(role)

        领导者副本(Leader Replica)  只能有一个

        追随者副本(Follower Replica)  可有多个

    副本机制有什么好处?(what are the benefits of replicas)

        1. 数据持久化

        2. 提供高伸缩性

        3. 改善数据的局部性

         因为kafka只有Leader Replica对外提供读写服务,所以2,3两点不满足。

    副本如何同步?(how to synchronize Leader-Follower Replicas)

       Follower 定时从 Leader 拉取信息

    当生产者设置 acks = all 时,表示在ISR(In-Sync Replicas)中所有的副本都需收到消息后才返回。可确保消息的强一致性,但会降低吞吐量。当生产者设置 acks = 1 时, 表示只要Leader收到消息后就返回,基本可以确保消息的最终一致性,提升kafka写入消息的吞吐量。

    RLEO: Remote Log End Offsite 所有follower日志末端位移, 帮助Leader确认HW 此时消费者,是无法读取到刚新增的这一条信息,因为HW的值还是10,要等待Follower同步后,才会更新HW的值 Leader的HW,会取RLEO的最小值; Follower的HW是取min(Leader HW, Follower-LEO), 所以下一次FetchRequest, Follow-1,Follow-2会更新HW = 11

    相关文章

      网友评论

          本文标题:kafka 副本机制

          本文链接:https://www.haomeiwen.com/subject/qhhvahtx.html