阿里云-文件存储 (提前批)
一面 2.9
C++
- 介绍 weak pointer,和 shared pointer 的区别
- shared pointer 的实现,然后使用的一些注意点,跨线程使用的注意点
- move 的实现以及使用场景
- gdb 怎么看所有线程的运行栈
- C++ 中 double 类型的实现,然后判断相等是怎么做的
网络
- time_wait 状态怎么进入的,然后需要等待多长时间,为什么需要等 2MSL,1MSL 不行吗
- 服务器上 time_wait 的连接很多会怎么样?
raft
- raft 会进入脑裂状态吗?描述下场景,怎么解决?
- 有多个 candidate 发起选举怎么解决?
- 讲一下 raft 的 leader 选举流程。
- raft 和 paxos 选举流程有什么区别?
- 选举超时的设置一般多久,为什么这么设置?
项目介绍
算法
- 实现一个HashMap,支持 insert, delete,find 接口。