专栏名称: 鸭哥聊Java
回复关键字:666 ,领取免费简历模板,Java面试题,Java编程视频等。本号内容涵盖Java源码,JVM源码,Dubbo源码,Spring源码,Spring Cloud微服务架构,分布式高并发架构技术,MySQL性能调优等。
今天看啥  ›  专栏  ›  鸭哥聊Java

kafka如何保证消息不丢失呢?

鸭哥聊Java  · 公众号  ·  · 2024-08-04 14:01

文章预览

今天咱们聊聊Kafka如何保证消息不丢失的问题。 Kafka作为一款高吞吐量的分布式消息系统,在数据一致性和消息持久化方面的表现确实很出色。 不过,要真正理解Kafka如何保证消息不丢失,我们得从几个角度来剖析: 消息生产者、消息存储、消息消费者以及Kafka自身的容错机制。 一、消息生产者端的保证 首先,Kafka在消息生产者端提供了多种机制来确保消息不会丢失。 1. acks参数 在Kafka中,生产者发送消息时可以指定一个acks参数,这个参数决定了消息发送后需要多少个副本确认接收后,生产者才认为消息发送成功。 acks=0:生产者不会等待任何确认。消息发送后立即认为成功,消息有丢失的风险。 acks=1:生产者会等待leader副本确认接收。此时消息已经到达Kafka,但如果leader故障,消息可能丢失。 acks=all:生产者会等待所有副本确认接收。此时消息被 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览