前言
今年的大环境非常差,互联网企业裁员的现象比往年更严重了,可今年刚好是我的第一个“五年计划”截止的时间点,说什么也不能够耽搁了,所以早早准备的跳槽也在疫情好转之后开始进行了。但是,不得不说,这次阿里面试真的太难为我了,可以说是和面试官大战了7个回合,不过好在最后给了offer。
我个人情况是5年Java后台经验,阿里定级P7的样子,下面是我的面试经历分享,希望能带来一些不一样的启发和帮助。
友情提醒:下部分涉及到的内容比较多,更多资料整理在文档里,包括Java学习资料、学习笔记、算法宝典、面试题合集、思维导图(Xmind)等,需要这些资料的朋友直接关注我添加VX:MXW5308 免费下载~
我与阿里面试官“大战”7回合,胜
第一轮:
第一轮面试是电话面,以基础知识为主,前后大概2个小时左右,这个阶段我是比较紧张的。
- 先自我介绍,包含日常工作
- 多线程,ThreadLocal,问了父子线程怎么共享数据 interitableThreadLocals
- Lock和Sync的区别
- AQS原理(执行过程源码,入队出队的细节,源码细节)
- CountDownLatch和CyclicBarrier的区别是什么源码级别
- volatile从指令重排序,内存屏障
- 数据库,MySQL索引,执行计划、count1*区别、举例优化sql、MVCC和事务隔离级别的关系、间隙锁、行锁
- JVM调优(可达性分析算法中根节点有哪些、cms和G1区别、怎样GC调优、怎样排查CPU彪高、内存彪高、逃逸分析)
- redis数据结构、跳跃表、redis qps能上多少,怎么知道的、sentinel和cluster区别和各自适用场景、redis cluster集群同步过程、redis单线程为什么快、多大叫大key、热key产生原因和后果以及怎么解决、本地缓存需要高时效性怎么办?
- spring的作用、spring循环依赖怎么解决(说出三级缓存源码细节)、spring aop原理(动态代理)、spring bean生命周期(源码细节&