面试面经 · 字节跳动
【字节跳动】【后端开发】【二面】微服务+分布式+限流熔断,二面深度技术拷打
【字节跳动】【后端开发】【二面】微服务+分布式+限流熔断,二面深度技术拷打
基本信息
| 项目 | 内容 |
|---|---|
| 公司 | 字节跳动 |
| 岗位 | 后端开发 |
| 轮次 | 二面 |
| 时间 | 2025年秋招 |
| 面型体感 | 深度技术面,项目拷打+系统设计 |
| 结果 | 通过,进入三面 |
面试题目(按提问顺序)
- 自我介绍
- 项目深度拷打(约10分钟):项目架构、技术选型、遇到的最大挑战
- 微服务项目中的服务发现是怎么做的?
- Nacos是通过什么机制去保证服务的注册以及服务的可用性的?
- Nacos存储的数据是怎么存的?基于内存还是有自己的持久化机制?
- 项目中的限流操作是怎么做的?底层基于什么限流算法?
- 对比一下令牌桶、漏桶、滑动窗口这几种限流方法的优劣势以及适合的应用场景
- 项目中的熔断是怎么实现的?熔断器具体是怎么工作的?
- Linux进程调度算法,CFS中高优先级进程可否被抢占?
- fork操作具体执行了哪些事情?
- TCP如何保证可靠传输?滑动窗口机制详解
- Kafka如何保证不重复消费?消费组结构是怎样的?
- 项目中如何保证分布式事务一致性?
- Redis的高可用是通过哪些方面来保证的?
- 优化一条SQL语句应该怎么做?
- 在浏览器中输入douyin.com后按下回车,整个调用链路是怎样的?
- TCP为什么需要三次握手而不是两次?
- 二维数组按行遍历和按列遍历在性能上有什么差异?除了内存还有什么原因?
- 手撕:力扣1139 - 最大的以1为边界的正方形
面试感受 / 反馈
- 二面时长约50分钟
- 二面和一面最大的区别:一面考基础广度,二面考系统理解深度
- 面试官会围绕你的项目一直追问,从项目细节追到架构设计,再追到优化方案
- 微服务相关知识考得很细:服务发现、限流、熔断都要能说到具体实现
- 分布式事务是高频考点,要能对比几种方案的优劣
- 手撕算法是中等难度的二维DP
准备建议
- 微服务架构要深入理解:注册中心、配置中心、限流熔断、服务治理
- 分布式事务要能对比2PC、TCC、Saga、消息队列等方案
- 限流算法要能手写令牌桶或滑动窗口
- 项目要准备好"为什么这么做"的回答,不要只说"我用了什么"
反问示例
- 团队的技术方向未来有什么规划?
- 目前系统面临的最大挑战是什么?