刷牛客的我很豁达 level
获赞
167
粉丝
5
关注
1
看过 TA
646
门头沟学院
2023
C++
IP属地:天津
暂未填写个人简介
私信
关注
10-20 19:35
门头沟学院 C++
我做了一个相对对口的项目,所以三面都是项目一面 周一1. 介绍一下项目 并回答2. 操作系统是如何io的3. 数据库文件是如何组织的就想起来这么多,绝大部分问项目代码一个小项目题,就是go代码写的一个for range里面取任务,然后执行任务,执行成功再取下一个,这是个串行化的代码,改成并行化实现,要求是,实现pipeline式,并发执行但是结果有序,获得一个结果就可以返回一个结果,仿佛是串行化。写伪代码就可以二面 周二1. 继续聊项目1.1 从你插入一个数据开始,你的存储引擎发生了什么1.2 set k1 v1 set k1 v2竞争是如何处理的1.3 事务是怎么实现的,事务竞争如何处理1.4 具体讲一下b+树页面的组织情况,如何组织,插入大量数据你做了什么,为什么索引如何变化大概就记得这些代码很简单两个个字符串s1 = ababcc s2= ba s1里面有多少个子部分的字符串组成和s2一样 不要求顺序一样包含字符一样就行。追问 如果是unicode字符怎么办,代码该如何改?之前用的数组有什么问题三面 周三 最难的一集0.lsm-tree 需要缓存什么结构 为什么?1. 聊一下项目 b+树和lsm tree 缓存效率上有什么区别, 只说了innodb怎么做到高效缓存,和对比场景哪个效率更好2. leveldb 中版本号有什么用 忘了答的是类似readview3. 了解无锁编程吗?说了cas 和无锁队列4. raft日志一致性如何实现,讲一下。5. 如果有个leader 发送了日志,但是没收到ack挂了,会发生什么。6. mutipaxos和raft了解吗?如何实现mutiraft。完全不会,只说了braft实现思路,没有根本解决,面试官推荐了一篇论文。反问环节1. 为什么用rust,而不是c++2. 学习上有什么建议3. 未来的工作聚焦于什么?答 缓存热点和raft并行化hr面 周四:常见问题,略过总结,面试体验很好问的很有深度,面完了是有成长的,值得一面。
查看21道真题和解析
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务