消费者弄丢数据

唯一可能导致消费者弄丢数据的情况,就是说,你那个消费到了这个消息,然后消费者那边自动提交了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数据丢失的场景相关推荐

  1. Kafka 数据丢失与优化

    目录 Kafka数据丢失与解决方案 Kafka在什么情况下会丢失数据? broker发生丢失数据分为下面几类 consumer发生丢失数据分为下面几类 Kafka性能调优 producer需注意 br ...

  2. 什么是kafka、kafka的应用场景、Kafka基本知识

    1.什么是kafka Kafka 最初由LinkedIn公司开发的,并于 2010 年贡献给了 Apache 基金会,之后成为 Apache 顶级项目. 目前 Kafka 已经定位为一个分布式流式处理 ...

  3. 批量提交 kafka_Kafka精华问答|kafka的使用场景是什么?

    戳蓝字"CSDN云计算"关注我们哦! Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.作为一种高吞吐量的分布式发布订阅消息系统,有着诸多特 ...

  4. Kafka精华问答 | kafka的使用场景是什么?

    戳蓝字"CSDN云计算"关注我们哦! Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.作为一种高吞吐量的分布式发布订阅消息系统,有着诸多特 ...

  5. qfile如何清空内容_数据丢失的场景有哪些?如何找回丢失的数据?

    对于数据丢失来说,在日常生活中也都是经常会发生的,当我们在使用电脑时,往往也都会出现一些意外的情况,导致所存储的数据文件出现丢失的现象.但是有时候并没有发生意外的情况,数据也会莫名其妙的丢失,那么对于 ...

  6. kafka使用_Kafka精华问答 | kafka的使用场景是什么?

    戳蓝字"CSDN云计算"关注我们哦! Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.作为一种高吞吐量的分布式发布订阅消息系统,有着诸多特 ...

  7. 2017-3-11 Kafka的应用场景

    标签: 有道云笔记 Kafka的应用场景: 1 消息队列 比起大多数的消息系统来说,Kafka有更好的吞吐量,内置的分区,冗余及容错性,这让Kafka成为了一个很好的大规模消息处理应用的解决方案.消息 ...

  8. kafka数据丢失总结

    数据丢失是一件非常严重的事情事,针对数据丢失的问题我们需要有明确的思路来确定问题所在,针对这段时间的总结,我个人面对kafka 数据丢失问题的解决思路如下: 是否真正的存在数据丢失问题,比如有很多时候 ...

  9. RabbitMq与Kafka的使用场景和区别

    这是陈东景于2021年8月29日下午16点原创作品,转载请标明出处!!!! 在进行软件设计的过程中,如果软件设计业务上存在需要短时间内处理大批量的信息,又需要能保证软件能正常运行(保证软件的高可靠和高 ...

最新文章

  1. 微服务化的十个设计要点
  2. HTML之垂直居中问题
  3. 【模型迭代】拒绝推断(RI)
  4. 75. Sort Colors - LeetCode
  5. WINCE恢复默认HIVE注册表的方法
  6. C语言编译php环境,vscode中C语言编译环境的配置方法(分享)
  7. 帮助开发者快速创建响应式布局的Boilerplate - Responsive Boilerp...
  8. GIS基础软件及操作(十二)
  9. 1. Windows网络编程(C++ Socket编程)
  10. Windows 7 驱动开发
  11. 关于华为9.0系统 应用图标消失处理
  12. LTE中CQI反馈学习笔记
  13. 计算机数值模拟软件有哪些,数值模拟软件介绍及使用.ppt
  14. 查看当前设备是否启用SR-IOV
  15. Cesium:实现卷帘效果
  16. iPad 3 即将发布,网传价格,IPD2降价50$ 新功能猜测
  17. 香港一站式综合电竞馆开幕 冀培训及发掘电竞人才
  18. 计算机狐狸标志的程序,Firefox 推出新 logo,这只狐狸长这样子
  19. 在线测试电脑配置--看看你的电脑能玩最新的游戏么!
  20. 与Google Protocol Buffer亲密接触

热门文章

  1. 西湖大学鞠峰组:环境宏病毒组学分析思路与常用工具
  2. 北京大学北京天然气水合物国际研究中心招聘生信博后
  3. ISME:菌根真菌菌丝分泌物中的果糖作为信号激发解磷细菌活化植酸
  4. 有了这个科研思路,高水平SCI就在手边!
  5. 植物微生物组培养与重组技术:从描述性研究走向功能性研究
  6. R语言使用ggplot2包的快速可视化函数qplot绘制散点图实战
  7. Python matplotlib可视化:用Matplotlib的bar_label函数为条形图添加数值标记(在每一个条形的外侧顶部)
  8. R语言读取excel文件实战(read.xlsx函数、read_excel函数、read.xlsx函数、Write函数)
  9. 损失函数(损失函数、代价函数、目标函数)、​​​​​​​MSE、0-1损失函数、绝对误差损失函数、分位数损失函数、Huber损失函数、感知损失函数、Hinge损失函数、指数损失函数、对数损失函数
  10. PCA(主成分分析)+SVD(奇异值分解)+区别