后端岗位面试题更新 2026-08-05

在什么场景下适合使用 select ... for update 进行加锁?

喜马拉雅后端开发互联网/IT风险判断技术原理方案权衡MySQL

考察说明

考察对悲观锁适用场景、使用条件及风险的理解

回答思路

  1. 说明 for update 属于数据库悲观锁,用于事务内锁定查询行
  2. 指出典型场景:多线程/多事务并发修改同一行且需保证一致性的业务,如库存扣减、账户余额更新
  3. 强调必须显式开启事务,锁只有在事务提交或回滚后才释放
  4. 提及需要走索引,否则可能锁全表,以及注意死锁和性能开销
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。