一面
项目(15分钟):
项目介绍
项目难点
项目提问(数据异步处理如何实现,服务如何拆分,数据统计为何增量统计)
mysql(10分钟):
事务隔离级别相关问题
版本控制的原理
版本控制中旧版本数据如何存储
行级别锁添加和释放的时机
索引最左匹配原则
索引结构,b+树较其他b树和红黑树的优势
联合索引的树b+树长什么样子
平时怎么sql调优的/慢查询怎么解决
redis(10分钟):
redis支持的数据结构
redis如何实现string,这样实现有什么好处
RDB和AOF都是什么,AOF日志量太大时redis如何处理
redis key的过期淘汰机制
hashmap的rehash过程,非常大的hashmap在rehash时会有什么问题
hashmap非常大时,如何删除它
redis实现一个优先级队列
其他(5分钟)
热迁移一个高频读写的数据表
二面
项目(40分钟)
项目介绍
项目难点
项目提问(分布式事务实现及回滚,负载均衡,业务高可用性,项目的反思/优化)
其他(10分钟)
多线程的处理一个超大文本文件
讨论了一小会vue.js(本人之前用vue脚手架写了个后台系统的前端)
面试总结
对自己项目的难点/亮点务必要完全了解,烂熟于心
mysql/redis/kafka/mongo这些常见存储要尽量多了解,多使用
计算机网络/操作系统最好能多了解一些,能发现很多解决常见问题的思路
没让我手撕代码,接口设计和算法问题,比较看重思路
面试体验
面试体验相当棒,面试官人很好,在我卡住的时候一直在引导我思考,给我提供思路。面试官的提问也都是根据简历上的技术栈提出的,没有刻意为难我,问题也都是由浅入深,感觉滴滴对mysql,redis要求很高。另外我目前工作语言是go和python,面试的岗位是java,滴滴对转语言这件事比较开放。hr联系我也都很及时,面试结束后很快就能得到反馈,一直和我保持良好的沟通
offer已发,希望大家都能收到理想的offer
全部评论
(12) 回帖