华为暑期实习-一面-面经
主要技术栈是C++,项目是leveldb和raft的分布式kv
这场面试官没开摄像头;岗位是华为云
- 自我介绍
- raft的项目是手写的还是网上借鉴的?
- raft节点的至少要多少个?三个节点的系统如果有两个节点断了,剩下两个节点怎么正常运行?初始状态下几个节点
- 解释LSM-tree,如何实现高带宽?
- LSM-tree的读写操作,posix做了哪些操作?
- 数据放在内存里吗?(答先将请求放到WAL日志里)
- 写入日志的过程如果进程挂了或者掉电了怎么办
- 频繁操作日志,如何保证数据的一致性和完整性
- 讲一讲raft项目里的CAP
- 什么是原子操作
- i++是原子操作吗
- 手撕:二叉树层序遍历