java某外企二面面经
- 时间
- 2026-08
- 来源
- 牛客网
《面试题目》
- 一面结束后两天约二面
- 先做自我介绍。
- 你的项目是实习项目还是学习项目?
- 第一个项目的主流程是什么?
- 谁会使用这个平台?商户、用户分别在链路里做什么?
- 你在学习项目基础上做过哪些改造?
- 原项目是什么样的?你发现了什么问题?你改成了什么方案?
- 支付项目和拼团项目原来是独立的吗?你怎么把它们串起来?
- 你整个拼团链路再细讲一下,尤其是技术实现逻辑和异常处理。
- 用户点“开团/参团/购买”之后,后端具体发生什么?
- 里面涉及 Redis 和 DB,DB 的数据什么时候进 Redis?
- 开团时 DB 写什么表?Redis 写什么 key?
- 参团时怎么判断名额是否足够?
- 锁单量和完成量分别是什么意思?
- 总锁单量由谁控制?三人成团里的“三”存在哪里?
- 为什么要用 Redis 做前置锁单?
- Redis 和 DB 的锁单数据怎么同步?
- 如果 Redis 先扣了名额,DB 写失败怎么办?
《参考解析》
- Redis常用于缓存、分布式锁和计数。缓存与数据库更新通常采用“先写数据库、再删除缓存”,并通过重试、延时双删或消息补偿处理删除失败。
- Agent或RAG链路应记录工具调用、检索证据和失败原因;对非法参数、路由错误和超时设置校验、重试上限与可观测日志,避免把模型输出直接当作可信结果。