关于kafka的面经问题

面了一个月很累,主要还是自己是边面边开始准备(三月之前一直没刷过题,也没准备面试什么的,惭愧),这里分享下自己在阿里面试中关于kafka的面试题目,我觉得从中学到了很多。

  • kafka的应用场景和优势(入场券)
    解耦,高吞吐(以及如何保证高吞吐)

  • kafka如何做到发送端和接收端的顺序一致性?
    发送端只保证了partition级别的顺序一致性,不保证topic级别的顺序。可以指定key值让相同key的数据到同一个partition保证顺序一致性。
    消费端使用offset保证读入数据的一致性。

  • 零拷贝的实现原理,省略了哪一次上下文切换
    这个也是netty经常会问到的问题,建议可以认真准备这个答案。

  • kafka如何保证分区容错性
    副本机制(replica-factor),使用zk做协调。(我也扯了扯ack机制)

  • 聊一聊 最多/最少/恰好消费一次
    这算是基础了,可惜当时没准备。

  • kafka的日志存储机制(/index下的文件结构),如何使用时间戳索引日志
    /index文件中会生成三份文件XX.log,XX.index,XX.timeindex,日志是分块存储的,时间戳索引从XX.timeindex中找到对应的offset,再从XX.index中索引XX.log。(学到了)

  • kafka-stream相比其他流数据框架的对比,聊一聊流数据中的窗口和水印
    这里主要是我CV上写了kafka-stream,只了解kafka的没必要了解。

面的不是中间件岗,所以面试官可能也没问太多MQ特别底层的知识,但自己还是没准备充分(主要还是得先准备从零刷力扣),最后分享一个面试中我觉得很有意思的算法题。

  • 一个系统上游有五个节点,每个节点每秒产生一句话,下游只有一个节点做word count。让你设计这个系统的实现思路。(假设wc表的合并很耗时)
#Java工程师##阿里巴巴##校招##面经#
全部评论
老哥,想问下在最后系统设计题的答案
1 回复 分享
发布于 2021-04-07 09:04

相关推荐

04-25 17:10
门头沟学院 Java
先是问了我的一些情况,比如为什么要找实习,后面打不打算读研之类的,然后拷打项目1. 项目是自己做的还是有团队,上线了吗,现在还在用吗2. 项目遇到过什么问题(Redis+Lua脚本预检,乐观锁解决超卖问题)3. 乐观锁怎么解决超卖问题,如果用悲观锁会有什么问题4. 套餐抢购QPS能到多少5. 有测试过用了乐观锁以后性能能到达什么程度吗6. 还遇到过什么问题?(我说了用RabbitMQ优化抢购逻辑,异步下单和数据库扣减库存)7. 我描述这个场景面试官说不理解,让我共享屏幕画一下架构图。但我可没画过这东西,我就画了个顺序图,一开始还画错了。。。8. Lua脚本的流程是什么9. 你这个Redis和Lua脚本预检就相当于避免了超卖问题,为什么还需要在数据库用乐观锁来避免呢?(这个其实我也有点不太明白,我的项目就是黑马点评包装的,有没有佬解释一下)解释了一通之后,面试官说你的系统还没复杂到要用RabbitMQ。。。然后开始拷打下一个10. 项目分工,你的工作?11. 采集股票的数据源?12. 项目里有对这些采集到的数据加入量化分析吗?(好提议,以后看看能不能加上去)13. 有遇到什么问题吗(讲了用线程池来分片采集股票数据入库)14. 线程池怎么处理的15. 最近AI coding很火,你有用过吗?在用的过程中遇到什么问题,怎么解决的?手撕:给一个数组,按从小到大顺序返回其中k个数(这个题太简单了吧,我都怀疑是不是还有其他题,结果没有)
查看16道真题和解析 美团求职进展汇总
点赞 评论 收藏
分享
评论
8
50
分享

创作者周榜

更多
牛客网
牛客企业服务