kafka虞兮叹一(消费幂等性,不丢失不重复)

一、如何保证kafka消费数据不丢失?

kafka通过先消费消息,后更新offset,来保证消息不丢失,但是会重复。

 

二、如何保证kafka消费数据不重复?(如何保证消息消费时的幂等性)

一、背景:

Kafka 实际上有个 offset 的概念,就是每个消息写进去,都有一个 offset,代表消息的序号,然后 consumer 消费了数据之后,每隔一段时间(定时定期),会把自己消费过的消息的 offset 提交一下,表示“我已经消费过了,下次我要是重启啥的,你就让我继续从上次消费到的 offset 来继续消费吧”。

offset扫盲:

  • offset在kafka0.9之前保存在zookeeper上,0.9之后保存在kafka一个特殊的topic上
  • offset分为自动提交和手动提交(手动提交更加可靠,在一定程度上防止重复消费)

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值