字节春招三面凉经
一面
为什么TCP挥手需要四次?
为什么握手需要三次?两次会出现什么问题?
如果第三次握手改成正常的消息发送会有什么问题?
什么是虚拟内存?虚拟内存解决了什么问题?
进程通信的几种方式?如何实现共享内存通信?
内核空间如何映射到用户空间?Mmap的实现原理?
如果进程需要通信的时候文件系统还没有挂载怎么办?(???)
算法题:寻找二叉树的右邻居
附加题:空间复杂度是多少?二叉树的某一层最大值是多少?
如何使用深度遍历解决这道题?
二面
volatile关键字的作用?什么是可见性?
Java内存模型?为什么这么设计会提高性能?
什么是系统调用?用户态什么时候会转内核态?
秒杀流程?怎么保证超卖问题?
怎么实现分布式锁?
消息队列的作用?有没有用过其他消息队列?
前端怎么获取秒杀成功的消息?
JMeter压力测试的结果?你认为目前的性能瓶颈在哪?
算法题:整数拆分(动态规划)
三面
项目中用户的登录逻辑?Token的生成和密码加密等。
Https的加密和请求过程?
TCP的可靠性原理?拥塞控制的常用算法?
什么是系统调用?举两个系统调用的例子?
IO多路复用的模型?epoll的优点?epoll接收请求的两种方式?(不了解)
JVM的垃圾识别算法?CMS和G1回收器的区别?
事务的隔离级别和并发性问题?Mysql怎么解决幻读问题?
CAP原理?Reids的五大数据类型?对底层原理有没有了解(不了解)
Rabbitmq的6中模式?是否能实现顺序消费?
算法题:三数之和