一开场自我介绍
介绍项目
mysql:
两个引擎
排查sql语句执行慢的错误,如何检查是否使用索引
数据库如何分库分表,如何处理id键值,怎么查找对应的数据库(这个没答上来,只答道分库分表)
mysql中binlog的概念(没答上来,面试官说这个比较重要)
redis:
常见数据结构
zset的实现用了什么数据结构
缓存穿透和缓存雪崩
redis为什么快(答了io多路复用和单线程和基于内存读写,面试官问还有呢,欢迎补充)
Spring:
bean的生命周期
介绍Spring的基本组件
介绍ioc会和aop的原理
用Spring的好处在哪里
你读过Spring源码的部分?哪部分对你编程最受启发(这部分答得不好)
jvm:
介绍基本内存模型
垃圾收集
多线程:介绍volatile和synchronizer的区别
synchronize和reeantriantlock的区别
reeantraintlock为什么比synchronize快?(没答到点上,最后面试官提了提下AQS,我补充道cas自旋比jvm底层实现快)
countdownlatch的用处及原理
aqs有什么相应的组件
其他:jdk1.7和1.8的区别
后来问对支付宝部门感兴趣吗?
实习时间?
面试官夸了句竞赛成绩不错(蓝桥杯国赛二等奖)
结束,许愿二面
感想:临阵磨枪对大厂面试不管用,还是要靠平时扎扎实实研究源码,面经只能告诉你什么部分考察的概率高,源码还是要自己用心一点点读