四个月之前的面经了,目前实习已结束,再回顾一下。
一面
八股
- ArrayList和LinkedList区别
- 为什么Linkedlist的插入会比ArrayList插入效率高
- HashMap知道吧,他有什么问题(说了线程不安全,头插死循环、同时put覆盖,并发put、get可能为空)
- 说说头插法和尾插法
- HashTable为什么线程安全
- ConcurrentHashMap1.7和1.8线程安全怎么做的(分段锁->sychronized+CAS)
- JDK1.8里的 sychronized 锁是锁的哪里(数组节点)
项目
- token无感刷新怎么做的
- 前端每次发请求都要带两个token吗?
- 说说布隆过滤器的结构
- 布隆过滤器有什么缺点(查询误判)
- 布隆过滤器的元素能否删除
- 布隆过滤器如何提高容错能力
- 知不知道布谷鸟过滤器?
- 全局异常处理器怎么做的?
- 怎么没用Spring自带的@ExceptionHandler
- 项目用mq做了什么
- mq除了解耦,还有哪些功能?
- mq怎么保证事务的
- 喜欢看什么书(我说计算机,或者人文社科?他说这不是看了就睡着了吗)
- 有什么爱好
算法
- 前序遍历二叉树
- 层序遍历二叉树
反问
- 部门做什么
- 技术栈有哪些
- 面试评价如何
二面
拷打
- 一面自我评价怎么样?
- 觉得一面面试官怎么样?
- 为什么会想做开源,说说做开源的契机
- 如果小红书内部需要做一个starter,你会从哪些方面去考虑、设计
- Rocketmq延迟消息底层是怎么设计的
- 那你说说ScheduleMessageService怎么拉延时消息的
- mysql的查询能做哪些优化
- 知道哪些中间件用到了raft算法
- 算法刷得咋样了,会不会接雨水
- 学校那些课咋办
- 手里有不有其他offer,你愿意来上海吗?
场景题
- 坐过高铁吧,有抢过票吗。你说说抢票会有哪些情况?(线程安全问题,比如同时读写共享变量)
- 那你说的是一种情况,读到的值是正确的,还有其他情况吗?(读的缓存,缓存没更新,mysql和redis数据不一致)
- 那对于数据不一致我们一般怎么处理?
- 现在我们来给12306抢票系统设计一个缓存,kv存什么?
第四题花了大概十多分钟,被绕进去了,不过面试官一直在引导我。
反问
- 面试评价怎样
- 部门做什么的
- 面试官您怎么看基架和业务
#实习##面经#