483 | 分布式事务:跨服务的数据一致性场景引入银行转账的经典问题:张三 → 李四 转账100元 ❌ 如果这样: 1. 扣张三100元 ✓ 2. 系统突然崩溃 ❌ 3. 李四没收到100元 ✗ 结果:张三丢了100元,但李四没收到! ✓ 应该这样(原子操作): BEGIN TRANSACTION 扣张三100元 加李四100元 COMMIT在单机系统,这叫"事务"。在分布式系统,这叫"分布式事务"。为什么需要分布式事务微服务架构下的数据问题┌─────────────┐ ┌─────────────┐ │ 订单服务 │ │ 库存服务 │ │ 数据库A │ │ 数据库B │ └─────────────┘ └─────────────┘ │ │ └────────┬─────────┘ ↓ 创建订单时: 1. 订单服务创建订单记录 2. 库存服务扣减库存 问题:两个操作要么都成功,要么都失败四大问题