面灵AI

华铁视通

时间
2026-08
来源
牛客网

《面试题目》

  1. 时间:8月20日(复盘
  2. 公司:华铁视通
  3. 批次:秋招
  4. 形式:一面,约44分钟
  5. 我这轮把问题集中在三个点
  6. 下单后发 Kafka,数据库事务回滚了,怎么避免消费侧重复执行?
  7. 用户3分钟内重复点“支付”,怎么挡住重复扣款和重复通知?
  8. Redis key 在多服务共享时偶发被删,先怎么判断是偶发 bug 还是脏改?
  9. 我先说消息侧加事件状态机,失败回滚要让消费按“已处理”幂等落库。支付防重我补了订单号、用户操作窗口、扣款态检查。Redis 那题我从“读写方是否有权限边界”和“谁在什么时间删的”两层查起,最后给出 key 按业务域隔离 + 操作审计的方案。

《参考解析》

  1. Redis常用于缓存、分布式锁和计数。缓存与数据库更新通常采用“先写数据库、再删除缓存”,并通过重试、延时双删或消息补偿处理删除失败。
  2. MySQL索引通常使用B+树,叶子节点按顺序连接,适合范围查询;设计索引时结合选择性、最左匹配原则和执行计划,避免无效索引与回表开销。