字节面经-字节跳动后端开发岗面经-05
- 时间
- 2026-08
- 来源
- 牛客网
《面试题目》
- 这个应用的核心技术点是什么?
- 大规模使用这个应用的话,后端业务要怎么处理?
- 讲讲多服务器怎么提高性能?
- 1000瓶酒,有一瓶是毒药,多少只老鼠可以查出来?
- 讲讲mcp和skills的区别
- shared_ptr为什么线程安全又不完全线程安全?
- vector扩容为什么是2倍?
- new和malloc区别是什么?
- mutex和atomic区别是什么?
- 我看你有实习经历和项目经历,你想重点分享哪一块?
- 刚刚你提到的慢查询问题,它的使用场景是什么样的?
- 那这个平台接了很多厂家吗?
- 上线或正式投入使用阶段,慢查询的查询条件是什么样的?
- 能详细介绍一下你的优化方案吗?
- 那针对用户查询自己名下所有设备的全量查询场景,如果用Redis缓存解决,缓存该怎么设计?
- 我们现在聚焦Redis缓存方案,怎么通过Redis缓存解决这个慢查询问题?
- CAS底层 两个线程真实交互的过程是什么样子的?
- mysql中的bin log和redo log的二阶段提交,谁先提交?
- HashMap底层 为什么Concurrent是线程安全?
- 限流100QPS情况下 如何实现限流?
- synchronized是怎么样的,懒汉式中,如果一千个请求打过来怎么办?
- 输入URL到显示页面全流程?
- 上一段实习,技术上的难点?
- 工作时怎么用ai coding的工具帮助你开发?
- 这个场景的底层通信是怎么做的(excuse me?
- 介绍下 Agent 项目中和亮点
- 你对MySQL了解吗?
- 你觉得MySQL为什么要做这样的分层架构?
- 事务了解吗?简单讲一下?
- 隔离级别你了解吗?
- 可重复读可以解决不一致为什么还需要串行化?
- 你个人平时有用agent在哪方面提效吗?
- 你ai coding用什么工具?
- 用户态和内核态有什么区别,如何发生切换?
- MySQL事务的理解,可重复读是怎么解决幻读问题的?
- Go内存分配是怎么做的?
- == 和 equals 的区别,为什么重写 equals 必须重写 hashCode?
- String、StringBuilder、StringBuffer 的区别?
- final、finally、finalize 分别是什么?
- Java 的异常体系,Exception 和 Error 的区别,受检异常和非受检异常?
- ArrayList 和 LinkedList 的区别,什么时候用哪个?
- HashMap 的底层实现,Java 8 做了哪些优化?
- 底层是数组加链表,哈希冲突用链地址法解决?
- 你这些是实习项目吗?
- 你这个里面为什么用Lua脚本?
- redis那个服务端,怎么保证这个原子性的?
- redis的持久化策略?
- agent loop了解吗?
- 你给我说说龙虾烧token为什么
- 你这是二级缓存吗?
- 本地缓存引用转redis 你把二进制转换成json?
- 介绍一下实习项目当中,比较有挑战性的一个点
- 你们这个平台,有多少日活用户?
- Redis单机实例性能达到瓶颈了,有什么解决方案?
- 项目的乐观锁是怎么做的?
- 项目用到的这个分布式锁,底层原理有去了解过吗?
- 手撕,没什么好说的,秒了。。最后纠结了一会输出,发现我写的是对的。
- 如果Redis宕机了,或者是取出来之后程序宕机了怎么办?
- 你了解rewritebatchedstatements参数吗?
- 批量插入的时候你怎么处理中间某条数据失败的情况?
- fastjson2和jackson有什么区别,它的优势在哪里?
- 如何打破它?为什么需要打破它?
- 这个agent项目干了什么,怎么实现?
- mcp,rag是什么,用来干什么?
- 怎么去调用大模型 (答:直接调openai的api😃)?
- 为什么用流式传输?
- HTTP 请求进入项目后的完整流程是什么?
- Redis 在你的项目中是怎么使用的?
- Synchronized 是基于 JVM 的,最底层原理是什么?
- 操作系统里内核态跟用户态是什么样的机制?
- 项目里用 Redis 做分布式锁,假设只有 MySQL,怎么实现分布式锁的能力?
- 怎么理解 WebSocket?
- 外卖交易模块中,调用微信支付出现网络超时,不知道是否扣款成功,代码如何处理?
- 进程地址空间由哪些组成?
- 程序的内存布局是什么样的?
- wifi和有线组网方式的区别,是在网络的哪一层?
《参考解析》
- 这类问题建议结合自己的项目经历和岗位要求准备具体案例,突出思考过程而非死记结论,面试官更看重解决问题的逻辑。
- 进程是资源分配的基本单位,线程是CPU调度的基本单位,协程是用户态的轻量级调度单位,切换成本远低于线程,但需要语言/运行时支持。
- 介绍项目时应说明背景、个人分工、遇到的技术难点及解决方案,并量化收益(性能提升、成本下降等),便于面试官追问细节。
- 算法题先明确边界条件与不变量,再选择合适的数据结构;双指针、哈希表、递归/迭代是常见工具,目标是把复杂度控制在线性或对数级别。
- CAS通过比较并交换实现无锁更新,失败后需要重试;库存扣减等高竞争场景可以引入版本号或分段计数减少冲突概率,避免忙等消耗过多CPU。
- 回答AI相关问题时应结合具体项目说明如何设计Prompt、评估效果以及处理边界情况(如幻觉、超时),并展示对模型能力边界的清晰认知。