一个有意思的问题:Kafka的消费Offset会溢出吗

最近在项目上接入公司APP产品的用户点击日志数据时,发现消费者组的Offset值非常大,才一天的时间,已提交的Offset值就有千亿级别了。
于是不禁想了一个问题:假设一个Topic就只有一个Partition,每天产生数据量为100000000000(千亿)条,那是否会出现该分区下的消费Offset溢出的情况呢?
经过搜索发现,果然也有类似的问题被提过,答案是:完全不用担心Kafka分区的消费Offset会出现溢出的情况!
简单计算如下:
1.假设Kafka只有一个Topic,且该Topic只有一个Partition,每天写入的数据量刚好是1千亿,那么多长时间之后会出现消费Offset溢出的情况呢?
2.Kafka中的消费Offset使用的是java.lang.Long类型,最大值为:9223372036854775807
3.按每天的生产量为1千亿算,Kafka的最大消费Offset可以支持:9223372天=9223372036854775807/1千亿 => 25269年
从上述简单的计算结果看,完全不用担心Kafka的消费Offset会有溢出的情况会出现(注:理论上是会溢出的)。
总结:
1.Kafka的消费Offset使用java.lang.Long类型表示,最大值是一个非常大的数字
2.虽然理论上存在会溢出的时候,但是由于现实条件不满足(没有一个软件系统是可以存活成千上万年的!)
另外,Kafka的消费Offset是按Partition计算的,每个Partition的消费Offset都是从0开始累加。
一个有意思的问题:Kafka的消费Offset会溢出吗的更多相关文章
- 【SparkStreaming学习之四】 SparkStreaming+kafka管理消费offset
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk1.8 scala-2.10.4(依赖jdk1.8) spark ...
- Spark Streaming消费Kafka Direct保存offset到Redis,实现数据零丢失和exactly once
一.概述 上次写这篇文章文章的时候,Spark还是1.x,kafka还是0.8x版本,转眼间spark到了2.x,kafka也到了2.x,存储offset的方式也发生了改变,笔者根据上篇文章和网上文章 ...
- Kafka重复消费和丢失数据研究
Kafka重复消费原因 底层根本原因:已经消费了数据,但是offset没提交. 原因1:强行kill线程,导致消费后的数据,offset没有提交. 原因2:设置offset为自动提交,关闭kafka时 ...
- Kafka 温故(五):Kafka的消费编程模型
Kafka的消费模型分为两种: 1.分区消费模型 2.分组消费模型 一.分区消费模型 二.分组消费模型 Producer : package cn.outofmemory.kafka; import ...
- kafka多线程消费及处理和手动提交处理方案设计[转]
转自:http://blog.csdn.net/haoyifen/article/details/54692503 kafka与其他消息队列不同的是, kafka的消费者状态由外部( 消费者本身或者类 ...
- kafka生产消费原理笔记
一.什么是kafka Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性 ...
- Kafka设计解析(十二)Kafka 如何读取offset topic内容 (__consumer_offsets)
转载自 huxihx,原文链接 Kafka 如何读取offset topic内容 (__consumer_offsets) 众所周知,由于Zookeeper并不适合大批量的频繁写入操作,新版Kafka ...
- kafka 多线程消费
一. 1.Kafka的消费并行度依赖Topic配置的分区数,如分区数为10,那么最多10台机器来并行消费(每台机器只能开启一个线程),或者一台机器消费(10个线程并行消费).即消费并行度和分区数一致. ...
- Kafka无法消费!?究竟是bug的“沦陷”还是配置的“扭曲”?
在一个月黑风高的夜晚,突然收到现网生产环境Kafka消息积压的告警,梦中惊醒啊,马上起来排查日志. 问题现象 消费请求卡死在查找Coordinator Coordinator为何物?Coordinat ...
- Kafka无法消费?!我的分布式消息服务Kafka却稳如泰山!
在一个月黑风高的夜晚,突然收到现网生产环境Kafka消息积压的告警,梦中惊醒啊,马上起来排查日志. 问题现象:消费请求卡死在查找Coordinator Coordinator为何物?Coordinat ...
随机推荐
- [转帖]Kafka常见使用场景与Kafka高性能之道
https://juejin.cn/post/6958997115012186119 消息队列使用场景 队列,在数据结构中是一种先进先出的结构,消息队列可以看成是一个盛放消息的容器,这些消息等待着各种 ...
- [转帖]logback:logback和slf4j中的:appender、logger、encoder、layout
(1)appender 1.appender标签是logback配置文件中重要的组件之一.在logback配置文件中使用appender标签进行定义.可 以包含0个或多个appender标签. 2.a ...
- [转帖]技术派-汇编语言指令集(intel X86系列)
针对汇编语言指令集(intel X86系列8086/80186/80286/80386/80486) AAA - Ascii Adjust for Addition AAD - Asci ...
- Opentelemetry Metrics SDK
Metrics SDK 目录 Metrics SDK 目标 期望 SDK 术语 数据流图表 要求 SDK MeterProvider Shutdown SDK:Instrument注册 SDK: Re ...
- vm-storage在全部都是新metric情况下的写入性能测试
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 vm-storage中,写入索引的性能要比写入data p ...
- 【JS 逆向百例】无限debugger绕过,某政民互动数据逆向
声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 逆向目标 目标:某政务服务 ...
- [置顶] ES篇
环境 第一篇: ES--介绍.安装 第二篇: ES--安装nodejs 第三篇: ES--插件 第四篇: ES--kibana介绍.安装 第五篇: ES--中文分词介绍.下载 第六篇: docker, ...
- Go 跟踪函数调用链,理解代码更直观
Go 跟踪函数调用链,理解代码更直观 目录 Go 跟踪函数调用链,理解代码更直观 一.引入 二.自动获取所跟踪函数的函数名 三.增加 Goroutine 标识 四.让输出的跟踪信息更具层次感 五.利用 ...
- 从零开始配置 vim(7)——自动命令
这篇我们来谈论vim一个相当重要的东西--自动命令. 从编程的角度来看,自动命令有点类似于事件响应,或者回调函数之类.当外部发生某些事件的时候,自动执行事先定义好的一组命令. 定义一个自动命令的格式如 ...
- 5.12 汇编语言:仿写While循环语句
循环语句(While)一种基本控制结构,它允许程序在条件为真的情况下重复执行一段代码块,直到条件为假为止.循环语句在处理需要重复执行的任务时非常有用,它可以让程序更加高效地处理大量数据或者重复性操作. ...