1、实习介绍2、介绍一下什么是索引?3、MySQL都有哪些索引?索引类型?(聚集索引和二级索引)4、举一个项目中的例子,使用MySQL做的查询,依据什么去做的查询?5、有遇到过一些慢查询的场景吗?知道什么是慢查询吗?6、explain关键字你通常会关注哪些输出信息作为判断。7、有遇到过选错索引的情况吗?有别的索引失效的场景吗?8、介绍一下MySQL的事务的隔离级别。9、幻读是一个什么样的场景?10、可重复读的隔离级别可以解决幻读,那他底层是怎么解决幻读的呢?11、你项目中用到的是哪个隔离级别,为什么这么选择?12、如果现在让你选择一个隔离级别,你会参考哪些条件去选择隔离级别?13、介绍一下单例模式。14、说到Bean的两种状态,单例和非单例,那么这两种方式对比一下?15、单例适合哪些场景?16、一般什么类需要去做一个单例?17、写一个线程安全的单例模式的伪代码;为什么要判断两次是否为空呢?18、商户缓存,介绍一下场景,要缓存哪些信息?19、介绍缓存穿透、缓存雪崩、缓存击穿。20、优惠卷秒杀,优惠券存在哪里?(尝试吟唱不断优化过程,被打断,这一块答的有点混乱,最后被批项目不熟了)21、秒杀优化的阻塞队列是通过什么实现的?22、为什么要用这个实现消息队列?有了解其他的消息队列吗?23、异步下单场景,那你怎么通知用户下单成功?(直接成功,并且指出不足,说出有思考下单失败应该怎么办)24、介绍一下点赞排行是个什么功能?为什么使用zset呢?(面试官好像不理解为什么要使用zset)25、了解过zset的底层实现吗?(跳表)如果往zset中添加一个元素,这个过程是怎么样的?26、feed流实现关注推送,关注推送功能是怎么实现的?(推模式)27、有了解过拉模式吗?对比一下推拉模式有哪些优缺点?手撕:(定时20min)带TTL的LRU