范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

阿里大佬整理的Kafka全套面试真题,真香!(15)

  一年之计在于春,又是一个跳槽季,大佬已经帮整理了Kafka的进阶面试,真香!先收藏再学习,搞起~~目录
  1. kafka的消费者是pull(拉)还是push(推)模式,这种模式有什么优势?
  2. 如何判断Kafka一个节点还活着的有哪两个条件?
  3. 讲一讲 kafka 的 ack 的三种机制(面试题:生产者发送数据的可靠性如何保障的?)
  4. kafka 分布式的情况下,如何保证消息的顺序消费?
  5. Kafka 消费者端的 Rebalance 操作什么时候发生?
  6. Kafka中的ISR、AR又代表什么?ISR的伸缩又指什么 (面试题: Kafka Replicas是怎么管理的?)
  7. 如何确定当前能读到哪一条消息?
  8. 聊一聊你对Kafka的Log Retention(日志留存)的理解 搞起
  1. kafka的消费者是pull(拉)还是push(推)模式,这种模式有什么优势?
  Kafka 遵循了一种大部分消息系统共同的传统的设计:producer 将消息推送到 broker,consumer 从broker 拉取消息。
  优点:pull模式由消费者自主决定是否批量从broker拉取数据,而push模式在无法知道消费者消费能力情况下,不易控制推送速度,太快可能造成消费者奔溃,太慢又可能造成浪费。
  缺点:如果 broker 没有可供消费的消息,将导致 consumer 不断在循环中轮询,直到新消息到到达。
  为了避免这点,Kafka 有个参数可以让 consumer阻塞直到新消息到达(当然也可以阻塞直到消息的数量达到某个特定的量这样就可以批量发送)。
  2. 如何判断Kafka一个节点还活着的有哪两个条件?
  (1)节点必须维护和 ZooKeeper 的连接,Zookeeper 通过心跳机制检查每个节点的连接
  (2)如果节点是个 follower,他必须能及时的同步 leader 的写操作,延时不能太久
  3. 讲一讲 kafka 的 ack 的三种机制(面试题:生产者发送数据的可靠性如何保障的?)
  request.required.acks 有三个值 0 1 -1(all),具体如下:
  0:生产者不会等待 broker 的 ack,这个延迟最低但是存储的保证最弱当 server 挂掉的时候就会丢数据。
  1:服务端会等待 ack 值 leader 副本确认接收到消息后发送 ack 但是如果 leader挂掉后他不确保是否复制完成新 leader 也会导致数据丢失。
  -1(all):服务端会等所有的 follower 的副本受到数据后才会受到 leader 发出的ack,这样数据不会丢失。
  4. kafka 分布式的情况下,如何保证消息的顺序消费?
  Kafka 中发送 1 条消息的时候,可以指定(topic, partition, key) 3 个参数,partiton 和 key 是可选的。
  Kafka 分布式的单位是 partition,同一个 partition 用一个 write ahead log 组织,所以可以保证FIFO 的顺序。不同 partition 之间不能保证顺序。因此你可以指定 partition,将相应的消息发往同 1个 partition,并且在消费端,Kafka 保证1 个 partition 只能被1 个 consumer 消费,就可以实现这些消息的顺序消费。
  另外,你也可以指定 key(比如 order id),具有同 1 个 key 的所有消息,会发往同 1 个partition,那这样也实现了消息的顺序消息。
  5. Kafka 消费者端的 Rebalance 操作什么时候发生?
  同一个 consumer 消费者组 group.id 中,新增了消费者进来,会执行 Rebalance 操作
  消费者离开当期所属的 consumer group组。比如宕机分区数量发生变化时(即 topic 的分区数量发生变化时)
  消费者主动取消订阅
  Rebalance 过程分为两步:Join 和 Sync。
  Join,顾名思义就是加入组。这一步中,所有成员都向coordinator发送JoinGroup请求,请求加入消费组。一旦所有成员都发送了JoinGroup请求,coordinator会从中选择一个consumer担任leader的角色,并把组成员信息以及订阅信息发给leader,leader负责消费分配方案的制定。
  Sync,这一步leader开始分配消费方案,即哪个consumer负责消费哪些topic的哪些partition。一旦完成分配,leader会将这个方案封装进SyncGroup请求中发给coordinator,非leader也会发SyncGroup请求,只是内容为空。coordinator接收到分配方案之后会把方案塞进SyncGroup的response中发给各个consumer。这样组内的所有成员就都知道自己应该消费哪些分区了。
  当 Consumer Group 完成 Rebalance 之后,每个 Consumer 实例都会定期地向 Coordinator 发送心跳请求,表明它还存活着。如果某个 Consumer 实例不能及时地发送这些心跳请求,Coordinator 就会认为该 Consumer 已经 "死" 了,从而将其从 Group 中移除,然后开启新一轮 Rebalance。
  coordinator, Group Coordinator是一个服务,每个Broker在启动的时候都会启动一个该服务。
  Group Coordinator的作用是用来存储Group的相关Meta信息,并将对应Partition的Offset信息记录到Kafka内置Topic(__consumer_offsets)中。
  第一个加入Consumer Group的Consumer被称为leader。真正的Consumer Rebalance行为是由Consumer Group Leader执行的。
  Group Leader首先向Coordinator获取Group中的Consumer成员列表,然后根据Rebalance策略,将partition分配给Consumer Group中的成员,再将分配结果告知Coordinator。
  最后,Coordinator将partition分配结果通知给每一个Consumer。在Consumer Rebalance的过程中,所有的Consumer都不允许消费消息。
  所以对于Rebalance来说,Coordinator起着至关重要的作用
  6. Kafka中的ISR、AR又代表什么?ISR的伸缩又指什么 (面试题: Kafka Replicas是怎么管理的?)
  ISR:In-Sync Replicas 副本同步队列
  AR:Assigned Replicas 所有副本
  ISR是由leader维护,follower从leader同步数据有一些延迟,任意一个超过阈值都会把follower剔除出ISR, 存入OSR(Outof-Sync Replicas)列表,新加入的follower也会先存放在OSR中。
  AR=ISR+OSR。(包括延迟时间replica.lag.time.max.ms和延迟条数replica.lag.max.messages两个维度, 当前最新的版本0.10.x中只支持replica.lag.time.max.ms这个维度)
  AR
  kafka分区中,维护了一个AR列表,其中包括了所有的分区的副本编号,AR分为ISR和OSR
  ISR
  同步列表,只有当所有的ISR内的副本都同步了leader中的数据,数据才能被提交,才能被消费者访问
  OSR
  非同步列表,OSR内的副本是否同步了leader的数据,不影响数据的提交,OSR内的follower只是尽力的去同步leader,数据版本可能落后。
  7. 如何确定当前能读到哪一条消息?
  如上图是一个分区日志文件
  标识共有7条消息,offset (消息偏移量)分别是0~6
  0 代表这个日志文件的开始
  HW(High Watermark) 为4,0~3 代表这个日志文件可以消费的区间,消费者只能消费到这四条消息
  LEO 代表即将要写入消息的偏移量 offset
  HW:High Watermark 高水位,取一个partition对应的ISR中最小的LEO作为HW,consumer最多只能消费到HW所在的位置上一条信息。
  LEO:LogEndOffset 当前日志文件中下一条待写信息的offset。
  HW/LEO这两个都是指最后一条的下一条的位置而不是指最后一条的位置。
  LSO:Last Stable Offset 对未完成的事务而言,LSO 的值等于事务中第一条消息的位置(firstUnstableOffset),对已完成的事务而言,它的值同 HW 相同
  LW:Low Watermark 低水位, 代表 AR 集合中最小的 logStartOffset 值
  8. 聊一聊你对Kafka的Log Retention(日志留存)的理解
  kafka留存策略包括删除和压缩两种
  删除: 根据时间和大小两个方式进行删除 大小是整个partition日志文件的大小,超过的会从老到新依次删除 时间指日志文件中的最大时间戳而非文件的最后修改时间。
  压缩: 相同key的value只保存一个 压缩过的是clean 未压缩的dirty 压缩之后的偏移量不连续 未压缩时连续。

华为与苹果喊你换手机,最全指南来了9月6日下午,华为发布了华为Mate50系列新机,隔了一天之后的北京时间9月8日凌晨,苹果也如期发布了其一年一度升级后的iPhone14系列新机,基础容量版本加量不加价,显然意在吸2022年的早秋,牛仔裙又回来了!穿搭风格多样化,比牛仔裤更实用时尚是一个圈这句话越发觉得正确,不难发现,近年来常流行的一些时尚款式和单品,早在我们父母或者爷爷奶奶那个时候就出现过了,并且还引领了当时的时尚,如今又回头流行起来的风格极具复古气息听句劝中年大叔尽量别穿低裆裤,油腻又显矮,这3种裤子更有型到了中年的男人,在穿衣打扮上都会尽量做减法,没有设计夸张的网红服装,也没有花里胡哨的配色。但也正因如此,在选择单品时更要注重款式,否则穿起来要么太单调,要么显油腻。很多中年男人之所8月份性能流畅榜公布小米仅第二名,vivo三星向后排8月份已经结束了,从整体的新机发布量来说,以高端机和折叠屏手机为主,而80以上的新机都是搭载了骁龙8Gen1芯片。其实,一半以上的新机都是因芯片而发布的,毕竟各大手机品牌都有应用的小米11UItra没能扛住压力,12G256G最新价格确认,还送699元耳机iPhone14系列的推出给国产手机造成了不小的压力,为了可以与iPhone14系列一战,国产手机厂商纷纷选择降价,比如去年发布的小米11UItra,这是一款定位高端市场的旗舰手机电视挂多高最合适?如何安装小米电视挂架?新房装修完,买了各种家电,小米电视70寸让售后安装要300元,自己动手丰衣足食吧。一购买挂架某宝上号称小米售后官方挂架,买回来后给正在我家安装小米洗碗机的售后安装工看,一眼看出来是适合大户型家庭!小米86英寸巨屏电视,到手仅五千元出头我国现在已全面开放二胎政策,家里增添一位人口,对于室内面积的需求也会提升,所以很多人在买房时都会一步到位选择120140平方的大户型,以前比较火的100平小三室明显不够用了。多出来工业互联网为传统制造业带来了什么?这些参与者有话说近日,2022金砖国家工业创新大赛决赛在厦门举行,本次大赛设置工业互联智能制造绿色循环三个赛道,面向金砖及其他国家共征集1330个项目,其中90个项目入围决赛,18个项目脱颖而出。Jetpack之DataBinding绑定布局文件是怎样实现的?dataBinding的实现原理是什么?dataBinding是怎么进行数据双向驱动的?时间从来不语,却回答了所有。致自己本文从定义,用法,原理分析,由浅到深对DataBindin发车!192号快闪列车带你驶向广电5G新世界视频加载中9月9日起,一列崭新的192号列车停靠在东方明珠广播电视塔的零米大厅内。这部拥有超大明亮空间明快红白色调的列车究竟从何而来?192有什么寓意?又有哪些新奇好物隐藏其中?作iPhone13有必要换14吗?我们来聊聊我们长话短说,如果你是纯粹为了追求最新款,那闭着眼睛就换了。但如果你是务实主义的,我是真不建议换。这次的升级可以说是微乎其微,处理器没有变还是A15,外观没有变,屏幕素质没有变,充
养儿子要暖一点,孩子14岁以前,父母要尽力做好三件事说起儿子,很多人能想到的关键词都是难管教叛逆不听劝。可实际上,男孩并非我们想象的那样,网络上有一段很精辟的形容词,儿子就是一朵晚开的花。父母要学会用心浇灌,不能硬碰硬,而是要用柔软孩子的脾气决定人生命运孩子的脾气决定人生命运思维方式决定我们思考问题的角度,思考问题的角度决定了我们的脾气。脾气终将会决定我们的xing格,xing格决定了什么呢?它会决定和我们相关的事物发展的轨以及结新手必备的炒股知识如果你连下面这些基本的盘口信息都看不懂的话,我建议你赶紧注销股票账户,股市很危险,早点儿逃命吧。最高是指一只股票当天的最高价格,相应的最低就是这只股票当天最低的价格。经开就是每天早塞拉斯少了泰特和戈登我们没有人能阻止亚历山大直播吧2月5日讯火箭今日背靠背客场121153惨败于雷霆。赛后,火箭主帅塞拉斯接受了媒体采访。谈及雷霆主将亚历山大爆砍42分,火箭主帅塞拉斯表示泰特和戈登的轮休是原因之一显然,我们从小被称为小罗斯,他却只想做自己,屡创三双奇迹总被质疑刷数据神奇之子拉塞尔横空出世神龟威少,犹有尽时,如今的威少已经非常的破败不堪了,35岁的威少时常成为湖人的绊脚石,下饭的表现也经常引得球迷经常把他当场反面教材。不禁也让人联想到当年那个飞穆里尼奥二月龙抬头,放弃与曼联阿森纳打欧战,本赛季前四可期穆里尼奥二月龙抬头,率先击败恩波利,拿下了本月的首场联赛,当然了,这还只是开头,如果操作得当,二月和三月初,面对中下游球队,也就是传说中的虐菜要稳,全部拿下的话,争四大局就提前奠定前国安球员侯永永那段经历就像一场永远无法醒来的噩梦顶着天才少年的光环加盟北京国安,成功入籍成为归化球员,拿着高薪享受着U23球员政策在国安效力近三个赛季共计打入三球,2019年9月在与天津天海的比赛中打入首球,随后不断出现伤病。近火烧乌巢三国最精彩的夜袭战详解自古以来,最难莫过于夜战。夜战之难,在于黑暗中看不清前后左右,如果点起火光照明,那么自己又会成为显眼的目标。故而,在现代化夜视器材问世以前,世界上绝大多数军队实际上到了上世纪七十年民间传说岳云出世头条创作挑战赛岳云(1119年7月14日1142年1月27日),字应祥,号会卿,相州汤阴(今河南省汤阴县)人,南宋抗金名将民族英雄岳飞长子,中国历史上少有的少年将军。历任武翼郎左武湖南常德市近代名人简介(四)刘泽远(1907年3月10日1929年3月4日),字正兆,又名荷初,出生于常德县(现鼎城区)丹洲乡刘拱桥。1925年6月,参加了长沙学生工人声援五卅反帝爱国运动示威游行。同年9月,所谓的弘治中兴不过是勋贵与文官的狂欢明孝宗的童年非常坎坷不幸。生母纪氏是广西土司女儿,纪姓叛乱失败后,少女纪氏被俘入宫中,管理皇帝私房钱。一次明宪宗朱见深偶尔经过,见纪氏美貌聪敏就留宿了一夜。明宪宗朱见深事后,纪氏怀