拼多多三面惨败,java中间件、数据库与spring框架,答不上…
面试开火箭,工作拧螺丝…月初有个朋友面试拼多多,一面自信满满过了,结果三面却惨败…昨天朋友约我出来讨论问题在哪里,三面就答不上了(卡壳很严重呐)。听完整个面试经历之后,我总结了一下,这次拼多多一二三面其实综合总结起来就问了五个方面的东西,分别是自我介绍+项目、java基础、中间件、数据库和spring框架,另外还问了道算法题。接下来就跟大家一起来看看拼多多的面经,看看你是否能轻松应对面试官的炮轰?
一、对Kafka的认识
1.Kafka的基本概念
2.安装与配置
3.生产与消费
4.服务端参数配置
二、生产者
1.客户端开发
- 必要的参数配置
- 消息的发送
- 序列化
- 分区器
- 生产者拦截器
2.原理分析
- 整体架构
- 元数据的更新
3.重要的生产者参数
三、消费者
1.消费者与消费组
2.客户端开发
- 必要的参数配置
- 订阅主题与分区
- 反序列化
- 消息消费
- 位移提交
- 控制或关闭消费
- 指定位移消费
- 再均衡
- 消费者拦截器
- 多线程实现
- 重要的消费者参数
四、主题与分区
1.主题的管理
- 创建主题
- 分区副本的分配
- 查看主题
- 修改主题
- 配置管理
- 主题端参数
- 删除主题
2.初识KafkaAdminCilent
- 基本使用
- 主题合法性验证
3.分区的管理
- 优先副本的选举
- 分区重分配
- 复制限流
- 修改副本因子
4.如何选择合适的分区数
- 性能测试工具
- 分区数越多吞吐量就越高吗
- 分区数的上限
- 考量因素
五、日志存储
1.文件目录布局
2.日志格式的演变
- v0版本
- v1版本
- 消息压缩
- 变长字段
- v2版本
3.日志索引
- 偏移量索引
- 时间戳索引
4.日志清理
- 日志删除
- 日志压缩
5.磁盘存储
- 页缓存
- 磁盘I/O流程
- 零拷贝
六、深入服务端
1.协议设计
2.时间轮
3.延时操作
4.控制器
5.参数解密
七、深入客户端
1.分区分配策略
2.消费者协调器和组协调器
3._consumer_offsets剖析
4.事务
八、可靠性探究
1.副本剖析
2.日志同步机制
3.可靠性分析
九、Kafka应用
1.命令行工具
2.Kafka Connect
3.Kafka Mirror Maker
4.Kafka Streams
十、Kafka监控
1.监控数据的来源
2.消费滞后
3.同步失效分区
4.监控指标说明
5.监控模块
十一、高级应用
1.过期时间(TTL)
2.延时队列
3.死信队列和重试队列
4.消息路由
5.消息轨迹
6.消息审计
7.消息代理
8.消息中间件选型
十二、Kafka与Spark的集成
1.Spark的安装及简单应用
2.Spark编程模型
3.Spark的运行结构
4.Spark Streaming简介
5.Kafka与Spark Streaming的整合
6.Spark SQL
7.Structured Streaming
8.Kafka与Structured Streaming的整合
总结
我们总是喜欢瞻仰大厂的大神们,但实际上大神也不过凡人,与菜鸟程序员相比,也就多花了几分心思,如果你再不努力,差距也只会越来越大。实际上,作为程序员,丰富自己的知识储备,提升自己的知识深度和广度是很有必要的。
送大家一份资料,戳这里免费领取
Mybatis源码解析
Structured Streaming的整合**
[外链图片转存中…(img-1DdEmxOe-1622626039493)]
总结
我们总是喜欢瞻仰大厂的大神们,但实际上大神也不过凡人,与菜鸟程序员相比,也就多花了几分心思,如果你再不努力,差距也只会越来越大。实际上,作为程序员,丰富自己的知识储备,提升自己的知识深度和广度是很有必要的。
送大家一份资料,戳这里免费领取
Mybatis源码解析
[外链图片转存中…(img-SNOBDWG4-1622626039494)]