0
点赞
收藏
分享

微信扫一扫

kafka数据丢失问题,如何保证数据不丢失

梯梯笔记 2022-05-16 阅读 31


1、数据丢失:

    acks=1的时候(只保证写入leader成功),如果刚好leader挂了。数据会丢失。

    acks=0的时候,使用异步模式的时候,该模式下kafka无法保证消息,有可能会丢。

2、brocker如何保证不丢失:

    acks=all : 所有副本都写入成功并确认。

    retries = 一个合理值。

    min.insync.replicas=2  消息至少要被写入到这么多副本才算成功。

    unclean.leader.election.enable=false 关闭unclean leader选举,即不允许非ISR中的副本被选举为leader,以避免数据丢失。

3、Consumer如何保证不丢失

    如果在消息处理完成前就提交了offset,那么就有可能造成数据的丢失。

    enable.auto.commit=false 关闭自动提交offset

    处理完数据之后手动提交。


举报

相关推荐

0 条评论