💡
原文英文,约500词,阅读约需2分钟。
📝
内容提要
Zomato使用位于战略位置的暗店来存放常见的订单商品,以实现快速配送。他们使用两阶段提交(2PC)协议来确保食物准备和配送同时进行。这保证了原子性和隔离性,但可能导致处理速度较慢和潜在的死锁。
🎯
关键要点
- Zomato使用暗店存放常见订单商品,以实现快速配送。
- 订单仅在附近的暗店有货时才会被接受。
- Zomato批量采购常见食品,确保快速配送。
- 接受订单需要食品可用和配送伙伴准备好。
- 如果任一服务失败,订单必须被取消。
- 确保原子性意味着食品准备和配送分配必须作为一个原子事务进行。
- 使用两阶段提交(2PC)协议来处理食品准备和配送服务的原子性。
- 两阶段提交协议包括准备阶段和提交阶段。
- 准备阶段中,食品和配送代理被预留,若成功则进入提交阶段。
- 提交阶段中,若两者都成功预留,则订单被确认。
- 两阶段提交的优点包括保证原子性和隔离性。
- 缺点包括处理速度较慢和潜在的死锁问题。
➡️