Kafka在什么情况下会出现消息丢失及解决方案
Kafka在什么情况下会出现消息丢失及解决方案
今天分享:Kafka在什么情况下会出现消息丢失及解决方案的教程内容,下面来一起了解一下吧。

消息发送
- ack=0,不重试
producer发送消息完,不管结果了,如果发送失败也就丢失了。
- **ack=1,leader crash **
producer发送消息完,只等待lead写入成功就返回了,leader crash了,这时follower没来及同步,消 息丢失。
- unclean.leader.election.enable 配置true
允许选举ISR以外的副本作为leader,会导致数据丢失,默认为false。producer发送异步消息完,只等待 lead写入成功就返回了,leader crash了,这时ISR中没有follower,leader从OSR中选举,因为OSR 中本来落后于Leader造成消息丢失。
解决方案:
- 配置:ack=all / -1,tries > 1,unclean.leader.election.enable : false
producer发送消息完,等待follower同步完再返回,如果异常则重试。副本的数量可能影响吞吐量。
不允许选举ISR以外的副本作为leader。
- 配置:min.insync.replicas > 1
副本指定必须确认写操作成功的最小副本数量。如果不能满足这个最小值,则生产者将引发一个异常(要么是 NotEnoughReplicas,要么是NotEnoughReplicasAfterAppend)。
min.insync.replicas和ack更大的持久性保证。确保如果大多数副本没有收到写操作,则生产者将引发异 常。
- 失败的offset单独记录
producer发送消息,会自动重试,遇到不可恢复异常会抛出,这时可以捕获异常记录到数据库或缓存,进行 单独处理。
消费:
先commit再处理消息。如果在处理消息的时候异常了,但是offset 已经提交了,这条消息对于该消费者来 说就是丢失了,再也不会消费到了。
broker的刷盘:
减小刷盘间隔
以上就是Kafka在什么情况下会出现消息丢失及解决方案的详细讲解,仅供大家参考建议!
相关阅读
-
密码学入门:深入理解非对称加密算法
正文核心介绍:密码学入门方面的知识,一起来看看吧! 非对称加密算法在网络安全、数据保护等领域有着广泛的应用。 本文将详细介绍非对称加密算法的基本概念,主要算法及其应用。 一
-
什么是公共云 其优缺点有哪些?
为大家分享什么是公共云的电脑方面的小经验,接下来IT袋网小编就来介绍。 公共云是最常见的云计算形式。 在公共云中,第三方提供商(如Amazon Web Services、Google Cloud或Microsoft Azure)将硬件、
-
建网站有哪些步骤 个人建网站的详细流程
跟大家聊一聊建网站有哪些步骤和个人建网站的详细流程的介绍,接下来IT袋小编就来介绍。 网站建设有哪些流程,可参考如下: 一、确定网站的定位和目标 定位是指为你的网站确立一个明确
-
K3s与K8s的关详细比较:探索两大Kubernetes解决方案的独特特性
对于大多数网友来说K3s与K8s的关详细比较的介绍,接下来就是全面介绍。 Kubernetes,简称K8s,是一个开源的容器管理和编排工具,广受云计算环境的欢迎。 然而,为了满足更多样化的需求,R


