有点不太按套路出牌的一次面试........
一面 1hour:
1.来做道题吧,给你计时:字符串数组最大乘积(LC318)。
2.开始深挖项目:项目难点,如何解决的?日志为什么要用到ThreadLocal,用来存什么?当要存的数据量很大的时候用ThreadLocal会出问题吗?如何保持数据库和缓存数据一致性?为什么要用二级缓存?caffine对比程序变量有什么优势吗?如何保持两级缓存间数据一致......
3.你既然用过SpringBoot,里面有个SpringBootApplication注解,你给我说说这个注解的作用吧。
4.你给我说说poststruct(其实面试官记错了,后来百度应该是postConstruct)这个注解吧?(一脸懵逼,说没见过这个注解)
5.那你不知道的话,要不先给我说说类加载机制和Bean的生命周期吧。
6.那你告诉我private static final String='a'和private static final int=1,这两个量什么时候初始化,区别是什么?
7.再写个场景,打开idea,多线程情况下,获取每个字符串被获取过的次数(注意锁粒度)。
其他的记不清楚了,常见的八股内容很少。
二面 35min:
1.敲代码,实现一个简单的负载均衡(方案被纠正过一次)。
2.场景题,两个大文件,每个数据假定是64位long,求出两个文件的公共数据?
#滴滴信息集散地##我的实习求职记录#