字节tiktok后端面经(已oc)
一面
自我介绍,介绍实习和项目
- 讲一讲字节内部的研发流程和一些组件
- 讲一下你项目中,在你负责的链路里一组rpc操作是怎么至少成功一次的(回滚和重试逻辑)
- 一个请求从客户端发起,到数据最后落盘的流程,要求结合字节的链路说
- 讲一下你用的压缩Trie树,其中indice数组还能怎么优化
- 讲一下lvs的几种模式,你觉得字节内部用的哪种为什么
- golang的协程调度
- golang内存管理:分配和gc,barrier
- 讲一下go的内存序,atomic包里面提供的是哪种内存序?
- channel怎么实现的
- 定时器了解吗,怎么用channel实现一个定时器
- 讲一下raft的选举机制,为什么要初始化为follower,为什么要随机超时?
- 讲一下新leader上任为什么要append一条空entry?
- raft本身能保证线性一致吗?raft本身保证了什么?关于读可以有什么优化,前提是强一致?
- 写题最小栈,反问
二面
- 项目相关
- 把哈希表深入问了一遍,涉及到哈希函数本身、扩容等细节
- 红黑树与跳表的细节
- 建堆过程,各节点在数组里的映射公式
- 写题:二叉树两个节点最短距离
三面
- 无关技术的问题
- epoll内部实现
- 讲一下nginx upstream的实现。有哪些均衡算法,有状态的服务要怎么实现均衡
- 多个worker监听同一个端口会有问题吗?(新内核不会了,SO_REUSEPORT)
- 哪些因素影响并发量,只考虑nginx层面
- 限流怎么实现的?
- 写题:全排列
- 写题:输入的可能有重复的全排列
以前面过字节,很多知识相关的问题以前的面评里有,所以很多必问的这次没问
#字节跳动校招##字节跳动##面试题目#