关于卖家挂单购买流程讨论

投票03/1555 浏览反馈
在无中心服务器、仅靠 clientScore 云变量的架构下,没有原子事务保证。两个客户端同时操作同一笔挂单时,无法保证互斥。两阶段确认本质上是用"人工审批"来充当分布式锁。
示例时间线:
T1: 卖家点击"撤单"
T2: 买家点击"购买"
T3: 买家扣款成功,直接收货
T4: 卖家撤单完成,货物退回卖家库存
结果: 买家收了货 + 卖家也拿回了货 → 货物被复制
现在的做法是分两步:你先付款冻结 → 卖家确认后才交割。任何环节出意外,钱自动退回。
不用担心卖家拖着不处理——超时会自动拒绝并退款,卖家没有好处去故意不审批。
---
## 后续可行性方案分析 - 挂单不可撤销
思路:禁止撤单 → 不存在"边撤边买"竞态 → 可以安全去掉审批 → 即买即得。
### 优势:
- 彻底消除竞态,安全地实现即买即得
- 系统大幅简化,去掉审批队列和拒绝收据
### 劣势:
- 手误定价无法挽回(50 金写成 5 金,瞬间被扫)
- 货物挂单期间完全锁定,急用取不回
---
是否保持现状,不做挂单不可撤销? (单选)
保持现状
25%
启用挂单不可撤销
75%
随便,无所谓
0%
1