猿辅导后端一面二面三面 面经(意向)
《写面经 攒人品系列》
一面 45min
1、介绍一下集群和分布式的概念吧
2、rpc和http有什么区别
3、http和http2的区别,http2的改进(并发控制是不是io多路复用?不知道)
4、http3了解什么
5、tcp拥塞控制和流量控制
6、zookeeper是干嘛的,介绍一下
7、zookeeper的leader是怎么选举的
8、还了解其他的分布式协议么
8、分布式锁的概念了解么(不太知道)
9、项目里用用mysql做了什么,为什么不用缓存,知道缓存的概念么?
10、redis的发布订阅模式是什么意思,你怎么用的
11、redis的一致性是怎么保证的(不会redis)
12、懂不懂jvm(完全不懂)
算法题:岛屿数量 二叉树的层序遍历
反问:部门业务和结果反馈的时间
业务介绍大概介绍了一下,时间是一周到两周给反馈
问愿不愿转java
总结:
问到redis的部分只能回答不会,场面有点尴尬,涉及到redis的部分都死得很惨
两个题都秒了,八股也都背过了,但是整体感觉很危险
二面 45min
1、集群服务器是如何管理用户登录态的
2、如果登录的用户太多,该怎么改进(回答加缓存、分库分表、主从复制,不满意)
3、加缓存是在数据库上处理,用户session上能做什么处理?(不太会,强答了session的部分内容)
4、知道session是啥么?(回答了一半被打断了,问学没学过计算机网络)
5、(问你几个简答的。。。)ios七层模型,http在哪一层
6、tcp三次握手,为什么要三次
7、流量控制和拥塞控制
8、rpc和http的区别
9、rpc在哪一层实现
算法题:
1、用一个数组实现一个双端栈(弹出的时候有一个边界写错了,被指了出来...)
2、合并两个有序的链表
反问:岗位比较看重的能力有哪些,结果大概什么时候出(一周)
面试官全程冷漠脸,问题回答的过程里,没有什么很积极反馈,感觉emm...大大的不妙
三面 50min
1. 主语言是什么?
2. 除了c++还会什么语言?
3. Redis了解多少?
4. 介绍一下智能指针
5. 为什么要有堆和栈的区别
6. b+树了解么,为什么用它做索引
7. 传值和传引用有什么区别
8. 写时复制了解么?
算法题:设计一个类,提供两个接口,一个用来不断接受数据,另一个返回当前数据的中位数
1. vector+排序+寻找 不满意
2. map直接搜,插入复杂度不满意
3. 提示用快速查找算法(不太会)
在面试官的各种引导下最后才写好
反问部门业务和技术栈
面试官人非常好,一直在引导问题,算法题也在耐心的一步一步引导,其实就是类似topk的写法,但当时反应不过来了……写的磕磕绊绊,没有时间做第二个题了
电话意向了!大口呼吸!!!