kafka数据丢失的场景
消费者弄丢数据
唯一可能导致消费者弄丢数据的情况,就是说,你那个消费到了这个消息,然后消费者那边自动提交了offset,让kafka以为你已经消费好了这个消息,其实你刚准备处理这个消息,你还没处理,你自己就挂了,此时这条消息就丢咯。
这不是一样么,大家都知道kafka会自动提交offset,那么只要关闭自动提交offset,在处理完之后自己手动提交offset,就可以保证数据不会丢。但是此时确实还是会重复消费,比如你刚处理完,还没提交offset,结果自己挂了,此时肯定会重复消费一次,自己保证幂等性就好了。
kafka弄丢了数据
这块比较常见的一个场景,就是kafka某个broker宕机,然后重新选举partition的leader时。大家想想,要是此时其他的follower刚好还有些数据没有同步,结果此时leader挂了,然后选举某个follower成leader之后,他不就少了一些数据
生产环境也遇到过,我们也是,之前kafka的leader机器宕机了,将follower切换为leader之后,就会发现说这个数据就丢了
所以此时一般是要求起码设置如下3个参数:
- 给这个topic设置replication.factor参数:这个值必须大于1,要求每个partition必须有至少2个副本
- 在kafka服务端设置min.insync.replicas参数:这个值必须大于1,这个是要求一个leader至少感知到有至少一个follower还跟自己保持联系,没掉队,这样才能确保leader挂了还有一个follower吧
- 在producer端设置acks=all; 这个是要求每条数据,必须是写入所有replica之后,才能认为是写成功了
- 在producer端设置retries=MAX(很大很大很大的一个值,无限次重试的意思):这个是要求一旦写入失败,就无线重试,卡在这里了
我们生产环境就是按照上述要求配置的,这样配置之后,至少在kafka broker端就可以保证在leader所在broker发生故障,进行leader切换时,数据不会丢失
kafka数据丢失的场景相关推荐
- Kafka 数据丢失与优化
目录 Kafka数据丢失与解决方案 Kafka在什么情况下会丢失数据? broker发生丢失数据分为下面几类 consumer发生丢失数据分为下面几类 Kafka性能调优 producer需注意 br ...
- 什么是kafka、kafka的应用场景、Kafka基本知识
1.什么是kafka Kafka 最初由LinkedIn公司开发的,并于 2010 年贡献给了 Apache 基金会,之后成为 Apache 顶级项目. 目前 Kafka 已经定位为一个分布式流式处理 ...
- 批量提交 kafka_Kafka精华问答|kafka的使用场景是什么?
戳蓝字"CSDN云计算"关注我们哦! Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.作为一种高吞吐量的分布式发布订阅消息系统,有着诸多特 ...
- Kafka精华问答 | kafka的使用场景是什么?
戳蓝字"CSDN云计算"关注我们哦! Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.作为一种高吞吐量的分布式发布订阅消息系统,有着诸多特 ...
- qfile如何清空内容_数据丢失的场景有哪些?如何找回丢失的数据?
对于数据丢失来说,在日常生活中也都是经常会发生的,当我们在使用电脑时,往往也都会出现一些意外的情况,导致所存储的数据文件出现丢失的现象.但是有时候并没有发生意外的情况,数据也会莫名其妙的丢失,那么对于 ...
- kafka使用_Kafka精华问答 | kafka的使用场景是什么?
戳蓝字"CSDN云计算"关注我们哦! Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.作为一种高吞吐量的分布式发布订阅消息系统,有着诸多特 ...
- 2017-3-11 Kafka的应用场景
标签: 有道云笔记 Kafka的应用场景: 1 消息队列 比起大多数的消息系统来说,Kafka有更好的吞吐量,内置的分区,冗余及容错性,这让Kafka成为了一个很好的大规模消息处理应用的解决方案.消息 ...
- kafka数据丢失总结
数据丢失是一件非常严重的事情事,针对数据丢失的问题我们需要有明确的思路来确定问题所在,针对这段时间的总结,我个人面对kafka 数据丢失问题的解决思路如下: 是否真正的存在数据丢失问题,比如有很多时候 ...
- RabbitMq与Kafka的使用场景和区别
这是陈东景于2021年8月29日下午16点原创作品,转载请标明出处!!!! 在进行软件设计的过程中,如果软件设计业务上存在需要短时间内处理大批量的信息,又需要能保证软件能正常运行(保证软件的高可靠和高 ...
最新文章
- 微服务化的十个设计要点
- HTML之垂直居中问题
- 【模型迭代】拒绝推断(RI)
- 75. Sort Colors - LeetCode
- WINCE恢复默认HIVE注册表的方法
- C语言编译php环境,vscode中C语言编译环境的配置方法(分享)
- 帮助开发者快速创建响应式布局的Boilerplate - Responsive Boilerp...
- GIS基础软件及操作(十二)
- 1. Windows网络编程(C++ Socket编程)
- Windows 7 驱动开发
- 关于华为9.0系统 应用图标消失处理
- LTE中CQI反馈学习笔记
- 计算机数值模拟软件有哪些,数值模拟软件介绍及使用.ppt
- 查看当前设备是否启用SR-IOV
- Cesium:实现卷帘效果
- iPad 3 即将发布,网传价格,IPD2降价50$ 新功能猜测
- 香港一站式综合电竞馆开幕 冀培训及发掘电竞人才
- 计算机狐狸标志的程序,Firefox 推出新 logo,这只狐狸长这样子
- 在线测试电脑配置--看看你的电脑能玩最新的游戏么!
- 与Google Protocol Buffer亲密接触
热门文章
- 西湖大学鞠峰组:环境宏病毒组学分析思路与常用工具
- 北京大学北京天然气水合物国际研究中心招聘生信博后
- ISME:菌根真菌菌丝分泌物中的果糖作为信号激发解磷细菌活化植酸
- 有了这个科研思路,高水平SCI就在手边!
- 植物微生物组培养与重组技术:从描述性研究走向功能性研究
- R语言使用ggplot2包的快速可视化函数qplot绘制散点图实战
- Python matplotlib可视化:用Matplotlib的bar_label函数为条形图添加数值标记(在每一个条形的外侧顶部)
- R语言读取excel文件实战(read.xlsx函数、read_excel函数、read.xlsx函数、Write函数)
- 损失函数(损失函数、代价函数、目标函数)、​​​​​​​MSE、0-1损失函数、绝对误差损失函数、分位数损失函数、Huber损失函数、感知损失函数、Hinge损失函数、指数损失函数、对数损失函数
- PCA(主成分分析)+SVD(奇异值分解)+区别