字节后端日常实习面经(已OC)

2技术面,1hr面。
background:我的项目主要有两个:
1. 一个仿写k8s的minik8s,基于golang
2. 一个基于 lsm tree 的kv存储系统,c++写的。

一面:
1. grpc 和 http的关系,http 2.0 和 http 1.1 的关系(因为我之前的实习涉及grpc)
2. redis 的数据结构
3. tcp 几次握手,几次挥手,为什么等待 2MSL
4. lsm tree 跳表数据结构讲一下,如何实现值分离,为什么使用 WAL,如何保证一致性。使用双 Memtable 提升多少吞吐?
5. mysql 索引数据结构
6. mysql 事务隔离等级,如何实现可重复读
7. Kafka 试用场景
8. 介绍一下 bloom filter

还有些问题可能忘了

笔试 3 medium:
1. 爬楼梯,dp
2. 排序矩阵查找,剪枝,lc面试题 10.09
3. 岛屿数量,dfs,lc200

二面:
1. replicaset的定义,如何保证一致性
2. http 2.0 和 http 1.1 的区别
3. 介绍一下 bloom filter
4. 介绍第二段实习
还有些问题可能忘了

笔试 1 medium
实现一个具有索引功能的 ordered map,可以使用任何标准库。
lz是 c++ 选手,直接用stl库解决了。然后要求分析复杂度。

整体来说面试官很nice,面试效率很高,已oc。
全部评论
请问具有索引功能的 ordered map是啥意思呀
1 回复 分享
发布于 2024-08-31 13:08 浙江
m
1 回复 分享
发布于 2024-08-20 09:55 广东
可以问问是哪个部门 吗
1 回复 分享
发布于 2024-08-11 22:57 江苏
可以问一下项目在哪里找的么
点赞 回复 分享
发布于 07-30 23:06 天津
笑死了 刷到同组实习的朋友了
点赞 回复 分享
发布于 2024-09-23 01:07 四川

相关推荐

11-27 12:10
门头沟学院 Java
1. JWT数据格式Header.Payload.Signature,Header存算法,Payload存用户信息,Signature用于防篡改2. 用户感知token过期前端请求返回401状态码本地缓存过期时间主动判断3. 拦截器实现是,实现Spring的HandlerInterceptor接口,重写preHandle等方法4. Bean生命周期实例化→属性注入→初始化→销毁5. 后置处理器实现BeanPostProcessor,在bean初始化前后拦截,如AOP代理生成时使用6. Lombok作用自动生成getter/setter/构造器/toString等,减少样板代码,提升开发效率7. Redis数据结构String/List/Hash/Set/ZSet/Bitmap/HyperLogLog/GEO8. ZSet实现底层用跳跃表(SkipList)+哈希表,跳跃表按分数排序,哈希表支持O(1)查分数9. ZSet查询复杂度O(logn),因跳跃表分层结构,每层跳过约一半节点,类似二分查找10. InnoDB索引类型主键索引、唯一索引、普通索引、全文索引(5.6+)、空间索引11. 索引有效性判断看查询条件是否命中索引字段,是否避免%前缀模糊查询/函数计算等破坏索引的操作12. 索引底层实现B+树结构,普通索引叶子节点存主键值,主键索引存行数据13. 进程vs线程进程:资源分配单位,独立地址空间线程:CPU调度单位,共享进程资源,切换开销更小14. 线程同步措施synchronized/Lock/Atomic原子类/volatile/CAS/ThreadLocal15. TCP关闭流程四次挥手:客户端FIN→服务端ACK→服务端FIN→客户端ACK16. 关闭连接状态客户端:TIME_WAIT(等待2MSL确保包送达)服务端:CLOSE_WAIT(未及时调用close)TIME_WAIT过多会占用端口资源,影响新连接建立手撕 数组最小操作次数
查看17道真题和解析
点赞 评论 收藏
分享
12-03 16:43
已编辑
门头沟学院 Java
bg:单二硕居然不是一对一,是一对二?两个人一个先回答一个补充。介绍下毕业课题?是深度学习的,简单说了下JVM了解吗?说了JVM的内存结构,哪些是线程私有哪些是线程公有;垃圾回收,可达性分析算法,标记清除、标记整理、复制算法。另一个人补充了具体的垃圾回收器。说说mysql的索引?另一个人先说了,说了底层数据结构,分类。我补充了节点是以页为单位,每页默认16kb。说说mysql索引的注意事项?创建的时候注意使用区分明显的字段,使用的时候注意最左匹配原则。另一个人补充索引失效的其他情况,我补充说有一种函数索引,可以提前创建好,这样使用对应的函数时索引也会生效。说说mysql的数据量达到多少即使使用了索引,性能也会很慢以及具体原因,3000w?4000w?我回答即使是上亿的数据,最多也就四层b+树,查询应该不会很慢吧。面试官说让我下来去了解下”mysql 磁盘存储的页的大小 以及其带来的数据表索引大小限制。“ 查了也没懂,太菜了Redis的基本数据结构有哪些,分别适用于什么场景;另一个人说了一个String。我补充,字符串,hash,List,set ,Zset。说了底层的SDS,压缩列表,紧凑列表,跳表,hash。场景就说了排行榜,滑动窗口限流这俩。Redis使用时的注意事项,有哪些容易导致系统崩溃的场景;说了缓存三剑客。(其实应该还说说大Key的)Redis的集群架构方案有哪些,分别适用于什么业务场景?主从,主从+哨兵,cluster。场景看具体业务大小吧。Redis为什么读写速度快?内存,单线程,io多路复用,后续引入多线程处理网络请求。sql题目:设计一个数据表,存储所有同学月考的语文、数学、英语等各科成绩;写一个SQL,查询出总成绩大于200分的学生姓名和总成绩,并按照总成绩排名用过maven吗?管理依赖,打包编译这些用的idea的插件。介绍项目。反问业务类型,工作时间。
查看13道真题和解析
点赞 评论 收藏
分享
评论
25
118
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务