oc还愿 字节后端日常实习三次面经
4.24一面
1.介绍秒杀系统功能
2.整体QPS多少?
3.有正常订单吗?
4.整体订单数据存在mysql里是吧?
5.秒杀倒计时如何实现?
6.数据库表如何设计?
7.秒杀表索引如何设计?除了主键ID还有其他索引吗?有unique的key吗
8.了解ngnix的正向代理和反向代理吗?
9.tcp的三次握手协议的过程?最后一次握手丢失后服务端和客户端会处于什么状态?
10.了解mysql的索引设计吗?
11.索引存储的数据结构是什么?
12.B+树有什么缺点?
13.redis你了解它整体有哪些数据结构?zset的数据结构?
14.redis持久化?redis运行很久,AOF执行语句会一直膨胀很大吗?
15.了解redis热key和大key?解决手段?
16.redis分布式集群搭建?
2.整体QPS多少?
3.有正常订单吗?
4.整体订单数据存在mysql里是吧?
5.秒杀倒计时如何实现?
6.数据库表如何设计?
7.秒杀表索引如何设计?除了主键ID还有其他索引吗?有unique的key吗
8.了解ngnix的正向代理和反向代理吗?
9.tcp的三次握手协议的过程?最后一次握手丢失后服务端和客户端会处于什么状态?
10.了解mysql的索引设计吗?
11.索引存储的数据结构是什么?
12.B+树有什么缺点?
13.redis你了解它整体有哪些数据结构?zset的数据结构?
14.redis持久化?redis运行很久,AOF执行语句会一直膨胀很大吗?
15.了解redis热key和大key?解决手段?
16.redis分布式集群搭建?
算法题:LC740 删除并获得点数
4.29二面
1.项目相关的几道问题
2.GET和POST区别
3.如果一个项目全都使用POST会如何
4.线程与进程的区别
5.举一个多线程和多进程软件的例子
6.浏览器页面为什么要用多进程
7.分布式锁(这个讲的挺久的)
算法:
1.Z字打印二叉树
2.接雨水(不能暴力解)
5.11三面
因为面试官居家办公,所以没开摄像头,本来很紧张,上来先聊天5分钟
1.数据库的四种性质
2.如何实现的隔离性、原子性
3.四种隔离等级如何实现的(说到ReadView和next-key lock这个程度)
4.什么情况下next-key会退化
5.数据库redo log 和 undo log
6.第三次握手丢失后服务端和客户端会处于什么状态?(这个因为第一次面试的时候发现一个问题 所以跟面试官讨论了一会)
7.那这个问题你有没有自己去抓包测试?
8.redis的io多路复用模型
9.redis中hash数据结构的rehash为什么快
算法:
有向图的循环依赖检测并打印出循环的环,可能存在多个环。
系统设计:
设计一个火车票购票系统需要考虑哪些方面的问题
总结:三面都没有问到Java的内容,可能是因为部门用的是Go语言 ,三个面试官人都很好,第二个面试官会在一个基本问题上追问,一直问到不会的程度。
字节真的是算法大厂,问的几乎都是无关语言的基础,以及算法难题(跟其他面试相比字节的算法题真的难不止一点)