在一个银行转账系统中,A 需要持有 B 的账本才能完成转账;如果 B 的账本不存在或被其他窗口使用,则等待直到可获取。请分析该设计存在的并发与业务问题,并给出改进方案。
考察说明
考察对资源锁序、死锁风险、可用性与数据一致性的综合分析能力
回答思路
- 识别账本即资源锁的语义,分析等待机制可能导致的死锁
- 指出锁粒度粗、持有时间长的性能问题及单点不可用风险
- 提出细粒度锁、账本分片、事务超时与重试、异步化等改进
- 关注转账业务的原子性和一致性要求,与实际并发模型结合
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。