新版本ISR 为啥 移除replica.lag.max.messages这个参数
ISR
上节我们涉及到ISR (In-Sync Replicas),这个是指副本同步队列。副本数对Kafka的吞吐率是有一定的影响,但极大的增强了可用性。默认情况下Kafka的replica数量为1,即每个partition都有一个唯一的leader,为了确保消息的可靠性,通常应用中将其值(由broker的参数offsets.topic.replication.factor指定)大小设置为大于1,比如3。 所有的副本(replicas)统称为Assigned Replicas,即AR。ISR是AR中的一个子集,由leader维护ISR列表,follower从leader同步数据有一些延迟(包括延迟时间replica.lag.time.max.ms和延迟条数replica.lag.max.messages两个维度, 当前最新的版本0.10.x中只支持replica.lag.time.max.ms这个维度),任意一个超过阈值都会把follower剔除出ISR, 存入OSR(Outof-Sync Replicas)列表,新加入的follower也会先存放在OSR中。AR=ISR+OSR。
Kafka 0.9.0.0版本后移除了replica.lag.max.messages参数,只保留了replica.lag.time.max.ms作为ISR中副本管理的参数。为什么这样做呢?replica.lag.max.messages表示当前某个副本落后leader的消息数量超过了这个参数的值,那么leader就会把follower从ISR中删除。假设设置replica.lag.max.messages=4,那么如果producer一次传送至broker的消息数量都小于4条时,因为在leader接受到producer发送的消息之后而follower副本开始拉取这些消息之前,follower落后leader的消息数不会超过4条消息,故此没有follower移出ISR,所以这时候replica.lag.max.message的设置似乎是合理的。但是producer发起瞬时高峰流量,producer一次发送的消息超过4条时,也就是超过replica.lag.max.messages,此时follower都会被认为是与leader副本不同步了,从而被踢出了ISR。但实际上这些follower都是存活状态的且没有性能问题。那么在之后追上leader,并被重新加入了ISR。于是就会出现它们不断地剔出ISR然后重新回归ISR,这无疑增加了无谓的性能损耗。而且这个参数是broker全局的。设置太大了,影响真正“落后”follower的移除;设置的太小了,导致follower的频繁进出。无法给定一个合适的replica.lag.max.messages的值,故此,新版本的Kafka移除了这个参数。
新版本ISR 为啥 移除replica.lag.max.messages这个参数相关推荐
- 【无标题】Kafka副本管理—— 为何去掉replica.lag.max.messages参数
1.概述 转载:Kafka副本管理-- 为何去掉replica.lag.max.messages参数 今天查看Kafka 0.10.0的官方文档,发现了这样一句话:Configuration para ...
- Kafka之ISR机制的理解
Kafka对于producer发来的消息怎么保证可靠性? 每个partition都给配上副本,做数据同步,保证数据不丢失. 副本数据同步策略 和zookeeper不同的是,Kafka选择的是全部完成同 ...
- 吐血整理出来的大数据知识点,你掌握多少?
前言 hi!我是啊晨 ,一个大数据分享者,好久没发博客了,最近忙于找工作,然后顺带整理了一些资料,相信也有一部分好兄弟,也在苦于找工作,或者正在学习大数据的知识,不太会总结的.我只能这样说,你来对了. ...
- 大据数技术之高频面试题8.0.9
尚硅谷大数据技术之高频面试题 (作者:尚硅谷大数据研发部) 配套视频 版本:V8.0 尚硅谷大数据研发部 目录 第1章 项目涉及技术 12 1.1 Linux&Shell 12 1.1.1 L ...
- 2021超全大数据面试宝典,吐血总结十万字,大数据面试收藏这一篇就够了
本文最新版已发布至公众号[五分钟学大数据] 获取此套面试题最新pdf版,请搜索公众号[五分钟学大数据],对话框发送 面试宝典 扫码获取最新PDF版: 版本 时间 描述 V1.0 2020-02-18 ...
- 2020大数据面试题真题总结(附答案)
版本 更新时间 更新内容 v1.0 2020-07-01 新建 v1.1 2020-07-18 朋友面试大数据工程师提供的关于架构及数仓方面的题目(智云健康) v1.2 2020-08-08 朋友面试 ...
- 【6w字干货】2020大数据面试题真题总结(附答案)
版本 更新时间 更新内容 v1.0 2020-07-01 新建 v1.1 2020-07-18 朋友面试大数据工程师提供的关于架构及数仓方面的题目(智云健康) v1.2 2020-08-08 朋友面试 ...
- kafka集群原理介绍
kafka集群原理介绍 @(KAFKA)[kafka, 大数据] kafka集群原理介绍 一基础理论 二配置文件 一java调优 二参数说明 三错误处理 四zookeeper中的内容 1brokers ...
- flume消费kafka数据太慢_kafka补充01
为什么高吞吐? •写数据 –1.页缓存技术 •kafka写出数据时先将数据写到操作系统的pageCache上,由操作系统自己决定什么时候将数据写到磁盘上 –2.磁盘顺序写 •磁盘顺序写的性能会比随机写 ...
最新文章
- 基于pytorch的卷积神经网络量化实现
- HDOJ 1098 Ignatius's puzzle
- 北斗导航 | 大规模点云地图的自动化构建(高翔:SLAM十四讲)
- 一个简单的blog系统(四) 实现用户页面和文章页面
- SQL Server 2008 修改安装路径后安装出错的解决方法
- 在Cocos2d中实现能够惯性拖动的选择界面
- 阿里云设置域名解析到主机ip
- Apollo进阶课程㉝丨Apollo ROS原理—2
- 给你准备的Linux启动流程
- XNA开发思考之3D开发中的小常识
- java month_java11教程--类Month用法
- 【API进阶之路6】一个技术盲点,差点让整个项目翻车
- mysql只update不做修改_105岁老人抽烟喝酒不运动,长寿秘诀:只做4件事,不做1件事...
- go语言io reader_Golang io.TeeReader()用法及代码示例
- qt将tablewidget导出为excel
- 苹果笔记本摄像头linux驱动下载,更适配Windows:苹果MacBook摄像头驱动更新
- Android开发蓝牙篇之蓝牙设备开启、搜索周边蓝牙设备
- 解析淘口令获取商品id,包含有效时间
- 使用国外著名大学数字图书馆资源方法
- MoviePy - 中文文档2-快速上手-创建和导出video clips
热门文章
- lvm 扩展根目录_Lvm扩展根目录容量
- 【youcans 的 OpenCV 例程 200 篇】102. 陷波带阻滤波器的传递函数
- Python数模笔记-模拟退火算法(3)整数规划问题
- 收藏列表放入MySQL还是redis_mysql导入redis
- 全数字实时仿真平台SkyEye和同步数据流语义与翻译正确性验证
- wordpress友联_Wordpress 友情链接页面终极版 – Fatesinger
- c# vs2010 excel 上传oracle数据
- 车林通购车之家--购车计算器模块--保险
- 10.3 考试 (考得不好)
- $0,$#,$@,$+特殊符号的含义,shell的传递参数