百度面试流程是真的快..这个部门面试总体比较简单。
一面3.14 下午4点(45min)
先写两道算法题
- 爬楼梯 leetcode11
- 盛水最多的容器 leetcode70
很简单,直接秒了。然后每道题都问了一下时间复杂度。
自我介绍
项目
- 技术的选型,为什么
- 为什么选netty,跟其他通信框架相比有什么优势
- websocket
- 有没有遇到过丢数据的问题(我说的粘包拆包)
- 维持长连接,心跳的频次
- 讲一下nio
- 看你项目中用到了线程池,说一下线程池的类型
- 线程池大小怎么设置(构造方法的参数)
- 然后详细说了一下线程池的核心参数
- 如何判断是CPU密集任务还是IO密集任务(没答出来 说通过进程数来判断)
- CPU密集的意思是该任务需要最大的运算,而没有阻塞,CPU一直全速运行。
- IO密集型,即该任务需要大量的IO,即大量的阻塞。
- 面试官:CPU涉及的是计算能力,IO是文件读取类型的这种。
- 文件上传的服务器性能如何
- 介绍一下SpringBoot基本的结构
- 讲一下项目的多级缓存架构
- 两个项目的登录功能有什么区别
- 怎么获取登录状态(cookie携带着JsessionId到后台,后台通过JsessionId从session拿到用户信息,如果没有session信息,则拦截)
- 为什么用RabbitMQ
八股
- 介绍一下原型模式
- SQL优化可以从哪些角度(说了优化sql语句,加索引),在业务里使用还有没有其他的思路(想到了分库分表 不知道是不是标准答案)
反问
一面面试官是个小姐姐,面试完全就是按照简历上的顺序来问的,写了什么就问什么,体验感很好。
下午4.50面完直接约了晚上7点的面试,我7.05刚下课,调到了7.30。
二面3.14 晚上7.30(1h15min)
自我介绍
项目
写题
- 场景题:实现一个双向链表 10个随机数 对双向链表排序(我没写出来..我说我会写数组的排序)
- 然后就写了快排
- 单例模式
八股
反问
二面面试官很耐心,对我评价很高。
三面3.15 下午4点(1h)
- 自我介绍
- 项目
- bio nio aio
- 同步、异步、阻塞、非阻塞
- redis持久化
- redis高可用(哨兵 集群)这里讲了哨兵
- 项目的所有技术栈 完整的流程串一遍
- 库存超卖
- nginx多路复用、流量转发、算法等
- 调用lua脚本使用的锁(Redssion)
- 设计模式
- 原型模式,作用
- 代理模式,哪些情况下会用代理模式(说了Spring)
- 代理模式和工厂模式的区别,使用场景
- Java注解、AOP的应用场景,或者是怎么用比较好
- 反射
写题
- 字符串反转,让用递归
- 刚开始写的方法传递的3个参数,他让优化,优化为2个参数,最后优化为1个参数。
反问
面完又做了个百度HR的测评。
3.23offer。
#百度##实习##百度实习##我的实习求职记录##你觉得今年春招回暖了吗#