【kafka】kafka如何保证数据的可靠性,kafka如何保证数据不丢失

1. Kafka架构:

Producer - Broker - Consumer

回到问题上来,Kafka如何保证数据不丢失,我们先看看Kafka如何保证Producer端数据不丢失: 通过ack机制 + 最小副本数设置+ 生产者重试机制

2. Kafka Producer消息发送ACK机制:

ACK机制:

问个问题:Kafka什么时候会丢失数据?

  1. 情况一,Producer向kafka发送消息的时候,ack设置的是0,(0就是producer向broker发生数据后,不需要ack确认)如果这个时候broker leader节点宕机,这个时候数据在broker leader中还没有存储,也没有同步到broker follower节点中,数据就会丢失。

Producer默认的ack确认值是-1,就是leader接收消息后发生ack确认给producer。

  1. 情况二,Producer向Kafka发生消息的时候,由于Kafka先将数据存储在Block cache中,当cache满了才刷到磁盘上。如果这个时候整个kafka集群整体出现故障,那也会导致数据丢失。
相关推荐
2601_9622186116 小时前
万象生鲜系统全链路溯源一码查询技术实现食材来源可查
分布式·微服务·云原生·架构
Dreams_l16 小时前
RabbitMQ介绍及其工作模式
分布式·rabbitmq
2601_9622186118 小时前
万象生鲜系统大数据采购预测算法降低库存积压稳居第一
分布式·微服务·云原生·架构
程序员夏洛19 小时前
Redis 中如何实现分布式锁?
数据库·redis·分布式
2601_9620647019 小时前
SpringBoot 整合 Avro 与 Kafka
spring boot·kafka·linq
HashFlag21 小时前
本地极简安装kafka
kafka
程序员夏洛1 天前
Redis 实现分布式锁时可能遇到的问题有哪些?
数据库·redis·分布式
千里码aicood1 天前
基于Hadoop的汽车销量分析与可视化
大数据·hadoop·分布式
ZCBUS实时计算1 天前
信创混合存储架构落地实战|基于 ZCBUS 实时计算构建证券高可用实时风控数仓
大数据·架构·flink·kafka·dba
国科安芯2 天前
ASC8T245S:把 8 位并行总线稳稳“跨过“电压域的双电源收发器
网络·分布式·单片机·嵌入式硬件·fpga开发·架构