万字干货 2019 年蚂蚁金服、头条、拼多多面经( 二 )


(一主多从、多主多从)
9. 拆分后主键怎么保证惟一?
(UUID、算法)
10. 生成的ID是全局递增唯一么?
(不是 , 只是全局唯一 , 单机递增)
11. 怎么实现全局递增的唯一ID?
(讲了TDDL的一次取一批ID , 然后再本地慢慢分配的做法)
12. Mysql的索引结构说下(说了B+树 , B+树可以对叶子结点顺序查找 , 因为叶子结点存放了数据结点且有序)
13. 主键索引和普通索引的区别(主键索引的叶子结点存放了整行记录 , 普通索引的叶子结点存放了主键ID , 查询的时候需要做一次回表查询)一定要回表查询么?
(不一定 , 当查询的字段刚好是索引的字段或者索引的一部分 , 就可以不用回表 , 这也是索引覆盖的原理)
14. 你们系统目前的瓶颈在哪里?
15. 你打算怎么优化?简要说下你的优化思路
16. 有什么想问我么?
四面
1. 介绍下自己
2. 为什么要做逆向?
3. 怎么理解微服务?
4. 服务治理怎么实现的?
(说了限流、压测、监控等模块的实现)
5. 这个不是中间件做的事么 , 为什么你们部门做?
(当时没有单独的中间件团队 , 微服务刚搞不久 , 需要进行监控和性能优化)
6. 说说的生命周期吧
7. 说说GC的过程(说了young gc和full gc的触发条件和回收过程以及对象创建的过程)
8. CMS GC有什么问题?
(并发清除算法 , 浮动垃圾 , 短暂停顿)
9. 怎么避免产生浮动垃圾?
(记得有个VM参数设置可以让扫描新生代之前进行一次young gc , 但是因为gc是虚拟机自动调度的 , 所以不保证一定执行 。但是还有参数可以让虚拟机强制执行一次young gc)
10. 强制young gc会有什么问题?
(STW停顿时间变长)
11. 知道G1么?
(了解一点 )
12. 回收过程是怎么样的?
(young gc、并发阶段、混合阶段、full gc , 说了 Set)
13. 你提到的 Set底层是怎么实现的?
14. 有什么想问的么?
五面
五面是HRBP面的 , 和我提前预约了时间 , 主要聊了之前在蚂蚁的实习经历、部门在做的事情、职业发展、福利待遇等 。阿里面试官确实是具有一票否决权的 , 很看重你的价值观是否match , 一般都比较喜欢皮实的候选人 。HR面一定要诚实 , 不要说谎 , 只要你说谎HR都会去证实 , 直接cut了 。
1. 之前蚂蚁实习三个月怎么不留下来?
2. 实习的时候主管是谁?
3. 实习做了哪些事情?
4. 你对技术怎么看?平时使用什么技术栈?
(阿里HR真的是既当爹又当妈 , )
5. 最近有在研究什么东西么
6. 你对SRE怎么看
7. 对待遇有什么预期么
最后HR还对我说目前稳定性保障部挺缺人的 , 希望我尽快回复 。
小结
蚂蚁面试比较重视基础 , 所以Java那些基本功一定要扎实 。蚂蚁的工作环境还是挺赞的 , 因为我面的是稳定性保障部门 , 还有许多单独的小组 , 什么三年1班 , 很有青春的感觉 。面试官基本水平都比较高 , 基本都P7以上 , 除了基础还问了不少架构设计方面的问题 , 收获还是挺大的 。
2、PDD
面试前
面完蚂蚁后 , 早就听闻拼多多这个独角兽 , 决定也去面一把 。首先我在脉脉找了一个拼多多的HR , 加了微信聊了下 , 发了简历便开始我的拼多多面试之旅 。这里要非常感谢拼多多HR小姐姐 , 从面试内推到offer确认一直都在帮我 , 人真的很nice 。