滴滴-一面-4.16
面完秒约当天二面
- 自我介绍
- 你的项目是只在本地部署,还是真的部署到线上有人在实际使用?
- 你项目里提到的 QPS 数据是怎么测试出来的?
- 你在学校有没有做过学校要求的其他项目,或者打过比赛?
- 介绍一下 MyBatis 和 MyBatis-Plus 的区别?
- 你在项目中是如何使用 Nginx 做反向代理的?
- 你项目的前端是怎么部署的?
- 介绍一下 ThreadLocal 的底层原理,以及有什么可能的问题(如内存泄漏)?
- 介绍一下布隆过滤器及其底层结构?也会发生什么问题(误判)及如何解决?
- 你的布隆过滤器是手写的还是使用的现成组件?
- 你项目中的乐观锁是怎么实现的?
- MySQL 中的乐观锁具体是怎么实现的?需要用到版本号字段相关的概念吗?
- 知道怎么用原生的 Redis 自己实现一个分布式锁吗?
- Redis 中 Set 集合底层的数据结构是什么?
- Redis 中 ZSet 集合底层的数据结构是什么?
- Redis 在高版本(如 6.0、7.0 等)迭代中做了哪些底层优化?
- 聊一聊 Java 常见的基础数据结构,列举几个并讲一下它们的底层实现?
- List 里面常见实现类(如 ArrayList 和 LinkedList)的区别是什么?
- 说一下 Map 相关类的底层实现细节
- 讲一下 HashMap 的 get() 流程?并在 ConcurrentHashMap 和 HashMap 中存取 null 值有什么区别?
- 场景题:如果你项目的接口 QPS 突然上升了 10 倍,你应该怎么去排查并去动态调整你的项目架构?
- 讲一下 Redis 的缓存渗透、缓存雪崩和缓存击穿问题,以及你采取的解决方案?
- 说一下你做的 AI 项目的具体流程和整体技术架构是什么样的?
- 记忆(Memory)模块是如何实现的?
- 工具调用(Tool Calling / MCP 协议)是怎么落地的?
- 如果只是本地部署一些自定义功能的小工具且不走 MCP 协议,如何把工具调用(Function Calling)对接到大模型里?
- 手撕:lc3. 无重复字符的最长子串