kafka消费策略 随笔
记录一下实际使用过程中对kafka消费策略的一些想法
kafka消费策略分类
主要分为 earliest
、latest
、none
三种消费策略,一般我们常用的是 earliest
消费策略的详解
1. earliest
的说明
当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,从头开始消费。
这个说明已经很明显了,就是说当前消费者组消费过,也就是说存在提交的offest记录,那么消息
的消费就是紧接着上次的偏移量进行消费,如果当前消费者组没有offest记录,直接从头开始消费。
记录一下自己在实际环境中的一次案例,当然公司项目不可能公布,真实环境都会用代称了。业务是消费kafka消息然后对数据进行清洗处理,然后将数据清洗到elasticsearch 中,在运行一段时间发现es中的数据有些字段没了,这样的情况急坏了现场运维,然后通过对代码进行添加日志重新运行发现数据正常,真的是逼了狗,之前的运维没换包,但是es中错误数据已经跑了快百万的数据了,现在需要重新按照新替换代码进行跑数据了,这样的情况下,让运维修改一下消费者组,并修改消费策略为earliest,不过当然需要将es中的索引全部删除了。
2.latest
消费策略说明
当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,消费新产生的该分区下的数据
这种消费策略就是消费最新的数据,不过这种可能出现消费数据丢失的情况下
3.none
消费策略说明
topic各分区都存在已提交的offset时,从offset后开始消费;只要有一个分区不存在已提交的offset,则抛出异常
对于这种消费策略在生产环境还是要慎用
kafka消费策略 随笔相关推荐
- Flink Kafka consumer的消费策略配置
val helloStream: FlinkKafkaConsumer011[String] = new FlinkKafkaConsumer011[String]("hello" ...
- kafka 消费者的消费策略以及再平衡
一 kafka的消费策略 1 .一个 consumer group 中有多个 consumer 组成,一个 topic 有多个 partition 组成,现在的问题是, 到底由哪个 consumer ...
- 1.12.Flink Kafka-Connector详解、Consumer消费策略设置、动态加载Topic、Consumers Offset 自动提交、Producer、容错等
1.12.Flink Kafka-Connector详解 1.12.1.Kafka Consumer消费策略设置 1.12.2.Kafka Consumer的容错 1.12.3.动态加载Topic 1 ...
- 跟我学Kafka:Kafka消费组运维详解
作为一个Kafka初学者,需要快速成长,承担维护公司Kafka的重任,对Kafka的学习,我按照三步走策略: 阅读Kafka相关书籍 从运维实战的角度学习Kafka 阅读源码,体系化,精细化掌握其实现 ...
- Kafka设计解析(十三)Kafka消费组(consumer group)
转载自 huxihx,原文链接 Kafka消费组(consumer group) 一直以来都想写一点关于kafka consumer的东西,特别是关于新版consumer的中文资料很少.最近Kafka ...
- Kafka消费者策略
截止本文书写时间,当前的kafka版本到了3.4,因此请注意你使用的版本.同时截至当前最新的kafka一共有四种消费者策略. 第一种叫做RangeAssignor,也叫range范围分配,是kafka ...
- 解决kafka消费积压问题
kafka消费积压 前文 问题定位 积压造成的原因 解决方法 更改配置 优化消费端 前文 遇到很多问题是因为消费积压导致的数据延迟,数据对校时问题重重.那么今天就记录下解决这个问题. 问题定位 消费积 ...
- sparkstreaming直接从kafka消费数据
1.sparkstreaming直接从kafka消费数据 采用createDirectStream,示例: createDirectStream[K, V, KD <: Decoder[K], ...
- kafka消费命令简化(alias中传入参数)
我们常见的kafka消费命令是这样的: $KAFKA/bin/kafka-console-consumer.sh --bootstrap-server Desktop:9091 --from-begi ...
- kafka 消费端 api_在消费者的眼中:您真的需要为您的API提供客户端库吗?
kafka 消费端 api RESTful Web服务和API的优点在于,任何使用HTTP协议的使用者都可以理解和使用它. 但是,同样的难题一遍又一遍地弹出:您是否应该将Web APis与客户端库一起 ...
最新文章
- Transact_SQL语句大全
- S8赛事落幕,阿里云边缘计算护航虎牙7000万低延时流畅直播
- 2016 实习招聘面试经历 - 2
- 迈向成功的关键在于执行(摘自李开复博士的《做最好的自己》)
- xml转json和实体类的两种方式
- wamp配置多少站点
- 你的项目应该如何正确分层?
- 网页关闭(解决window.close在火狐下不兼容问题)
- Server Tomcat v6.0 Server at localhost was unable to start within 45 seconds. If the server requires
- 我的世界java占用太多内存_Java 进程占用内存过多,幕后元凶原来是线程太多
- python必背入门代码-python必背内容有哪些
- 最强面试题整理第二弹:Python 进阶面试题(附答案)
- 【Go学习】GO语言异常处理机制panic和recover分析
- 【SpringBoot】最通俗易懂的消息服务
- 本站最全-unity常用API大全(万字详解),不信你不收藏
- Turbo产品系列回来了!
- Day02| 第四期-阿里巴巴股票行情分析(一)
- 操作系统————应用题
- Windows下安装 msysGit 以及初始化 Git server环境
- Jess在Eclipse中的安装
热门文章
- 微信大数据解析不一样的人生,你被戳中了吗……
- Head First 设计模式笔记 4.工厂模式
- 高阶导数的运算法则 与 莱布尼茨公式
- [转载]班主任带着学生打副本 每周学习成绩就是DKP(这篇太雷人了,转载保持)...
- python绘制直方图显示数字_Python | 数据可视化汇总
- 实现在线预览 pdf 以及添加水印
- 通配符的匹配很全面, 但无法找到元素 ‘aop:aspectj-autoproxy‘ 的声明
- 关于Python自规避游走
- Urchin再包装 Google提供免费网络流量分析工具(zz)
- ARM内核矩阵计算教程(STM32)