字节面经-字节跳动后端开发岗面经-07
- 时间
- 2026-08
- 来源
- 牛客网
《面试题目》
- 介绍一下agent项目中有挑战的点
- 介绍一下实习项目当中,比较有挑战性的一个点
- 你们这个平台,有多少日活用户?
- Redis单机实例性能达到瓶颈了,有什么解决方案?
- 项目的乐观锁是怎么做的?
- 项目用到的这个分布式锁,底层原理有去了解过吗?
- 为什么sorted set不用B+树或红黑树,而用跳表呢?
- Redis为什么这么快?
- 内存快溢出的时候,Redis是怎么清除内存的?
- 了解过分布式锁吗?
- 介绍一下线程池的功能,以及有哪些常用的参数
- 讲一下一条SQL语句执行的大体流程
- 知道哪些数据库存储引擎?
- 知道hashcode吗?
- 父子进程与fork()?
- 为什么是三次握手而不是两次?
- 多进程和多线程的区别?
- 进程和线程不共享的东西?
- 挑一个最近觉得挑战比较大的项目展开介绍一下吗?
- Agent内部具体的实现可以再详细介绍一下吗?
- MCP是把自然语言转成预置查询类的工具吗?
- 操作内部平台时,工具会去操作吗?
- 系统测试完成后,准确率怎么评估?
- 用20%数据作为测试集,是模型跑case后人工评判准确率吗?
- 如何对答案进行轨迹级评分?
- 手撕一道回溯,给出一串数字,输出九键可能对应的所有字符串集合,注意path的传递
- Agent内部具体的实现可以再详细介绍一下吗?
- MCP是把自然语言转成预置查询类的工具吗?
- 操作内部平台时,工具会去操作吗?
- 系统测试完成后,准确率怎么评估?
- 用20%数据作为测试集,是模型跑case后人工评判准确率吗?
- 如何对答案进行轨迹级评分?
- 目前系统的准确率是多少?
- 讲一下常用的集合框架的底层的数据结构,优缺点和什么场景下会使用到
- 讲一下JVM的内存的区域,各个JDK版本有什么差异吗
- 年轻代和老年代这些他们对应的一个垃圾回收算法或者策略是怎么样的,简单的讲一下
- 数据库的事务隔离级别有了解吗?
- 你在这个开源社区里贡献了多少代码?
- 你在这个社区里做了多长时间?
- 你喜欢开源吗?为什么?
- 你觉得你一面聊得怎么样?
- 你做过互联网系统吗?
- 你学过数据库吗?用过数据库吗?
- (项目)聊天数据存储在什么位置?
- Kafka 为什么吞吐量大?
- Kafka 消费者可以有多个吗?
- 协程和线程的区别?
- Go 怎么管理协程?
- MySQL 索引?
- B + 树和 B 树的区别是什么?
- 布隆过滤器的原理,除了布隆过滤器还有什么方案?
- 什么是幂等性?实现幂等的方案?
- es中存储的数据内容,es的写入具体的过程是什么?
- 如果是要做个人文档对权限的匹配该如何做呢?
- Mybatis中工程操作上要对主从操作有什么适配呢?
- 线程池具体是如何实现复用的呢?
- 线程其中也会用到start方法是如何去减少开销的呢?
- 在和LLM会写什么样的提示词呢?
- 有没有对比过不同的ai,你评价一下这些ai产品呢?
- 你这个”一人一单“,怎么又用了Lua脚本又用了Redisson分布式锁?
- 那你讲一下Redisson看门狗的原理?
- 那么你对这个高并发场景的前置有什么拦截吗?
- 围绕项目问DDD四层架构,为什么使用DDD ?
- 支付场景下,如何保证数据一致性?
- 如果消息队列、数据库、第三方支付回调之间出现时序问题,你会怎么处理?
- 你们项目里有做过性能优化吗?
- 如果支付接口在高并发场景下出现延迟升高,你会怎么排查?
- Java线程池核心参数有哪些?
- synchronized 和 ReentrantLock 的区别是什么?
- JVM内存区域怎么划分?
- 手撕:输出字符串能组成的所有的IP地址
- 可以挑一个最近觉得挑战比较大的项目展开介绍一下吗?
- Agent 内部具体的实现可以再详细介绍一下吗?
- MCP 是把自然语言转成预置查询类的工具吗?
- 用 20% 数据作为测试集,是模型跑 case 后人工评判准确率吗?
《参考解析》
- 介绍项目时应说明背景、个人分工、遇到的技术难点及解决方案,并量化收益(性能提升、成本下降等),便于面试官追问细节。
- 这类问题建议结合自己的项目经历和岗位要求准备具体案例,突出思考过程而非死记结论,面试官更看重解决问题的逻辑。
- CAS通过比较并交换实现无锁更新,失败后需要重试;库存扣减等高竞争场景可以引入版本号或分段计数减少冲突概率,避免忙等消耗过多CPU。
- 红黑树是内存内的平衡二叉树,追求单点操作的对数复杂度;B+树针对磁盘/索引场景做了扇出优化,减少IO次数,更适合范围查询和顺序扫描。
- 进程是资源分配的基本单位,线程是CPU调度的基本单位,协程是用户态的轻量级调度单位,切换成本远低于线程,但需要语言/运行时支持。
- 回答AI相关问题时应结合具体项目说明如何设计Prompt、评估效果以及处理边界情况(如幻觉、超时),并展示对模型能力边界的清晰认知。
- 算法题先明确边界条件与不变量,再选择合适的数据结构;双指针、哈希表、递归/迭代是常见工具,目标是把复杂度控制在线性或对数级别。
- CPU飙高排查一般先用top/htop定位进程,再用jstack/pstack抓线程栈,结合火焰图找到热点方法,常见原因是死循环、频繁GC或锁竞争。