Kafka保证消息不丢失

Kafka保证消息不丢失

生产者发送消息到Broker丢失

设置异步发送

回调方法中的参数Exception e如果为空

代表发送成功,如果不为空代表发送失败出现异常

消息在Broker中丢失

kafka集群中存在分区机制

分区中分为leader和follower副本

leader负责读写,而follower只负责数据同步

broker确认机制

生产者向broker发送消息存在发送确认机制acks

acks=0,生产者不会等待broker响应
acks=1(默认),只要leader收到消息就会响应
acks=all,只有全部节点都收到消息,才会响应

消费者接受消息丢失

每一个分区只能由一个消费者进行消费,分区中根据偏移量记录消费的进度,按照偏移量进行消费

每个消费者会自动按时提交偏移量

如果在提交之前宕机,就有可能出现重复消费

如果在消费之前提交然后宕机,就有可能出现丢失数据的情况

解决方案

禁用自动提交偏移量,改为手动提交

可以使用同步提交,异步提交或者同步+异步的方式组合提交

相关推荐
风中凌乱2 小时前
kafka新版本集群的安装与部署
分布式·kafka
SLD_Allen3 小时前
大规模分布式AI训练基础设施
人工智能·分布式·模型训练
abcy0712133 小时前
kafka消息丢失与消息重复消费
kafka
富士康质检员张全蛋4 小时前
Kafka的操作-消费的详情
分布式·kafka
昕光xg5 小时前
Istio笔记04-基于Jaeger的分布式链路追踪
笔记·分布式·istio
wWYy.19 小时前
分布式:数据复制
分布式
正儿八经的少年1 天前
分布式 ID
分布式
七夜zippoe1 天前
深入解析CANN仓库中的HCCL分布式通信库
pytorch·分布式·cann·hccl·通信库
AI人工智能+电脑小能手1 天前
【大白话说Java面试题 第188题】【08_Kafka篇】第4题:Kafka 大量消息积压时该如何处理?
java·性能优化·kafka·故障排查·消息积压
富士康质检员张全蛋1 天前
Kafka的操作 消费者组 消费位置查看
分布式·kafka