Kafka保证消息不丢失

Kafka保证消息不丢失

生产者发送消息到Broker丢失

设置异步发送

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

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

消息在Broker中丢失

kafka集群中存在分区机制

分区中分为leader和follower副本

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

broker确认机制

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

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

消费者接受消息丢失

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

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

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

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

解决方案

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

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

相关推荐
CrazyClaz12 分钟前
分布式事务专题3
分布式·分布式事务
梁萌3 小时前
分布式事物seata的AT模式实战
分布式·微服务·实战·seata·一致性·事物
失伟3 小时前
CDC(数据变更捕获)场景应用
mongodb·elasticsearch·kafka·kafka-connect
shaohaoyongchuang3 小时前
01-分布式基础-创建微服务项目
分布式·微服务·架构
Msshu1233 小时前
Type-C PD快充协议 PD快充诱骗协议芯片 PD/QC/FCP/SCP/AFC电压诱骗芯片
mongodb·zookeeper·eureka·kafka·consul
失伟4 小时前
kafka教程(新手使用单机版)
分布式·kafka
java_logo5 小时前
Apache Kafka Docker 容器化部署指南
运维·docker·云原生·容器·kafka·kubernetes·apache
Xyz996_5 小时前
Ceph分布式存储
分布式·ceph
绝顶少年5 小时前
Redis 五大核心应用场景实战解析:缓存、会话、排行榜、分布式锁与消息队列
redis·分布式·缓存
武子康5 小时前
Java-181 OSS 实战指南:Bucket/外链/防盗链/计费与常见坑
java·大数据·分布式·oss·云存储·fastdfs·ali