26届快手秋招 timeline - 后端业务架构中心
09-05,投递
从2号开始,连投三次,挂了两次,终于过初筛了,12号约一面(顺带一提,暑期实习连投7次,没过初筛......)
09-18,一面(45min)
介绍实习(15min)
volatile 有什么用?除了可见性还有啥用?
Synchronized 和 ReentrantLock 有什么区别?Synchronized 是公平锁吗?两者可重入性有区别吗?ReentrantLock 底层原理?
类加载过程
IO 多路复用?支持的系统调用有哪些?
一条 SQL 的执行过程
MySQL 四个隔离级别?分别解决什么问题?为什么默认不用串行化?
TCP 和 UDP ?TCP 流量控制和拥塞控制?服务器上一个端口的 TCP 最大连接数是由哪些因素决定的?除了半连接队列和改 Linux 参数,在协议上有什么控制方法?服务器如何管理一个 TCP 连接?
什么是虚拟内存?物理内存的映射发生在什么时候?
手撕:122. 买卖股票的最佳时机Ⅱ、463. 岛屿的周长
p.s. 这是真爱问八股,大部分答上来了,TCP 那块有一两个不会,等了4个工作日约二面
09-29,二面(50min)
自我介绍
博客里的东西大部分都是自己写的吗?那你除了实习和项目外,有没有自己写一些其它的代码?写这些代码的目的是啥?那你给我讲讲你博客里你觉得比较有意思的文章?
HashMap 是线程安全的吗?那现在有一个写线程依次写入k1,k2...,多个读线程等写线程写完k1后不断读k1,读线程读到的k1会不会有问题?什么时候会有问题?
垃圾回收了解吗?那有个老年代对象引用了年轻代中的一个对象,现在需要进行 young gc,判断这个年轻代对象是否能被回收需要把老年代的对象全部扫一遍才能发现他被引用了,对吗?那你怎么优化这个行为?
有大量恶意连接与服务端建立 TCP 三次握手时,故意不响应最后一个 ACK 给服务端,这样会造成什么问题?
Java 线程有几种状态?Linux 进程有几种状态?你说线程的运行态分为时间片用完和没用完两种,那你说一下操作系统是如何分配时间片的?间隔都一样吗?
手撕:236. 二叉树的最近公共祖先
p.s. 这是真不咋问八股,都是开放题,感觉都答得不是很好,不过居然当晚就打电话约三面了