维他奶Java线下面试面经
- 时间
- 2026-09
- 来源
- 牛客网
《面试题目》
- 库存系统中的数据库死锁如何解决?
- AI 代码审查系统如何设计?
- 工作中如何使用 Claude Code?使用了哪些 skill?
- 上下文过长时如何处理?
- 开新窗口时如何保存上一段对话的内容?
- 系统探活如何实现?
- 系统高可用如何设计?
- 为什么从 Dify 转向 LangChain?
- 为什么选择自己部署 DeepSeek 小模型?
《参考解析》
死锁排查要保留数据库死锁日志,统一事务加锁顺序、缩短事务范围并为冲突操作设置重试;不能只靠提高锁等待超时。AI 代码审查可分为静态规则、依赖与安全扫描、模型审查和人工确认,模型输出必须可追溯且不能直接替代合并门禁。
探活应区分进程存活、依赖就绪和业务可用,负载均衡只把流量发给就绪实例;高可用还需多实例、超时重试、熔断、限流和故障演练。上下文过长时应提炼结构化摘要、保留关键决策并分阶段开启新会话。
选择 LangChain 或自部署模型应基于可观测的延迟、成本、数据隔离和扩展性需求。模型部署还要评估显存、并发、量化质量及故障切换,不能只因“本地可运行”就迁移。