小红书后端开发实习一二面(已oc)

四个月之前的面经了,目前实习已结束,再回顾一下。

一面

八股

  1. ArrayList和LinkedList区别
  2. 为什么Linkedlist的插入会比ArrayList插入效率高
  3. HashMap知道吧,他有什么问题(说了线程不安全,头插死循环、同时put覆盖,并发put、get可能为空)
  4. 说说头插法和尾插法
  5. HashTable为什么线程安全
  6. ConcurrentHashMap1.7和1.8线程安全怎么做的(分段锁->sychronized+CAS)
  7. JDK1.8里的 sychronized 锁是锁的哪里(数组节点)

项目

  1. token无感刷新怎么做的
  2. 前端每次发请求都要带两个token吗?
  3. 说说布隆过滤器的结构
  4. 布隆过滤器有什么缺点(查询误判)
  5. 布隆过滤器的元素能否删除
  6. 布隆过滤器如何提高容错能力
  7. 知不知道布谷鸟过滤器?
  8. 全局异常处理器怎么做的?
  9. 怎么没用Spring自带的@ExceptionHandler
  10. 项目用mq做了什么
  11. mq除了解耦,还有哪些功能?
  12. mq怎么保证事务的
  13. 喜欢看什么书(我说计算机,或者人文社科?他说这不是看了就睡着了吗)
  14. 有什么爱好

算法

  1. 前序遍历二叉树
  2. 层序遍历二叉树

反问

  1. 部门做什么
  2. 技术栈有哪些
  3. 面试评价如何

二面

拷打

  1. 一面自我评价怎么样?
  2. 觉得一面面试官怎么样?
  3. 为什么会想做开源,说说做开源的契机
  4. 如果小红书内部需要做一个starter,你会从哪些方面去考虑、设计
  5. Rocketmq延迟消息底层是怎么设计的
  6. 那你说说ScheduleMessageService怎么拉延时消息的
  7. mysql的查询能做哪些优化
  8. 知道哪些中间件用到了raft算法
  9. 算法刷得咋样了,会不会接雨水
  10. 学校那些课咋办
  11. 手里有不有其他offer,你愿意来上海吗?

场景题

  1. 坐过高铁吧,有抢过票吗。你说说抢票会有哪些情况?(线程安全问题,比如同时读写共享变量)
  2. 那你说的是一种情况,读到的值是正确的,还有其他情况吗?(读的缓存,缓存没更新,mysql和redis数据不一致)
  3. 那对于数据不一致我们一般怎么处理?
  4. 现在我们来给12306抢票系统设计一个缓存,kv存什么?

第四题花了大概十多分钟,被绕进去了,不过面试官一直在引导我。

反问

  1. 面试评价怎样
  2. 部门做什么的
  3. 面试官您怎么看基架和业务

#实习##面经#
不想面试的哈基米 文章被收录于专栏

记录面试碎片

全部评论
哪个部门呀老哥
5 回复 分享
发布于 2024-01-13 21:54 上海
好强大!!
4 回复 分享
发布于 2024-01-18 23:18 广东
滋味太强了
1 回复 分享
发布于 2024-01-30 20:08 上海
问的好骚,布谷鸟过滤器
点赞 回复 分享
发布于 2024-03-15 19:24 北京
好奇面试官对于第三个反问的回答
点赞 回复 分享
发布于 2024-03-09 20:50 河北
好强
点赞 回复 分享
发布于 2024-03-07 09:40 江苏
实习生进去就接需求吗?
点赞 回复 分享
发布于 2024-01-31 21:45 黑龙江
老哥,设计starter那里,面试官是想问什么呀?
点赞 回复 分享
发布于 2024-01-26 18:07 河南
跪了
点赞 回复 分享
发布于 2024-01-12 08:31 广东
好强!
点赞 回复 分享
发布于 2024-01-11 21:24 广东

相关推荐

HR_丸山彩同学:你的项目描述里,系统设计讲了很多:MemCube是什么、三级存储架构怎么设计、四种遗忘策略分别是什么。这些面试的时候讲没问题,但简历上不需要这么细。 简历要突出的是影响力,不是实现细节。面试官看简历的时候想知道的是「这个项目有多大价值」,不是「这个项目具体怎么实现的」。实现细节是面试时候聊的 怎么改:技术细节可以精简为一句「采用三级存储架构+四种遗忘策略」,把省出来的篇幅用来写影响力。比如:项目有没有开源?有没有写成技术博客?有没有被别人使用过? 校园经历没有任何信息量,任何人都可以写这句话,写了等于没写。更关键的是,你投的是技术岗,校园活动经历本来就不是加分项。如果非要写,必须写出具体的数字和成果。如果你没有这些数字,那就老老实实删掉 「端到端耗时缩减30-40%」要给出确切数字和绝对值。从1000ms降到600ms是降了40%,从100ms降到60ms也是降了40%,但这两个含义完全不一样。其他也是,涉及到数据,准备好证据,口径统一,面试会问 「熟练」「熟悉」「了解」混在一起用,读起来很乱。而且「了解前端需求」最好改成「具备前后端协作经验」
点赞 评论 收藏
分享
评论
33
183
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务