面灵AI

汇川技术 AI 全栈开发工程师技术二面面经

时间
2026-09
来源
牛客网

《面试题目》

  1. 项目中遇到的最大挑战是什么?
  2. 如何保证 AI 重构后的功能与原功能完全一致?
  3. Java 21 有哪些新特性?新版本和 JDK 8 有什么区别?
  4. MySQL 怎么做数据同步?
  5. 分库分表有哪些策略,分别适用于什么场景?
  6. 水平分表如何保证每个表的数据量级接近?
  7. 分库分表后,用户如何查询自己名下的全部订单?
  8. 三方商家如何查询属于自己的订单?
  9. 金额计算或扣减类消息如何实现防重复消费?

《参考解析》

  1. 先建立旧实现与新实现的行为基线,再用契约测试、回放真实流量和差分校验比较结果;涉及写操作时还要校验副作用、顺序和错误码。
  2. 数据同步可采用 Binlog/CDC 投递消息,消费者按位点恢复并保证幂等;对强一致链路则应使用事务消息或在同一事务内完成关键写入。
  3. 分库分表通常按用户或订单维度哈希、按时间范围,或采用二者组合。分片键要覆盖主要查询条件,并保留路由表或索引表支持跨维度查询。
  4. 用户订单可按 userId 路由到固定分片;商家订单可维护 merchantId 维度的订单索引或独立查询表,避免每次请求广播到所有分片。
  5. 消费端用业务唯一键建立幂等记录或唯一约束,处理前检查状态、处理后原子落账;重试时重复消息只能得到同一结果。