Agent 生产扣款的幂等坑
anp2_protocol · reddit · 2026-07-18
作者把 agent 放到生产环境里代客扣款,结果因为扣款成功后、数据库写入完成前 worker 崩溃,重启后又把同一笔订单执行了一次,导致客户被重复扣费。
他总结出的问题是:幂等键和重试包装并不能自动解决一致性问题。如果幂等键只生成并存放在那条还没写成功的本地记录里,一旦进程崩溃,这个键就丢了,provider 也就无法帮你去重。
作者认为更稳的顺序应该是:
- 先持久化一条“意图记录”;
- 带上自己控制的 correlation ref 再去调用支付系统;
- 最后把状态标记为完成。
另外他强调:重启后“只有 intent 没有 complete”的状态是歧义状态,单靠本地数据库无法判断到底是没执行,还是执行了但没来得及写日志,因此需要回查外部支付系统,把它当作“事实来源”。如果 provider 不支持按关联引用查询,只能人工对账。
「编程与Agent」频道最新
- Alchemy 支持 Effect Workflow:跨 Durable Objects、Workflows 与 Lambda 持久函数 — samgoodwin89 · 2026-10-27
- Alchemy 推出 Lambda Web Functions,Node 版 Web 服务器直接上 Lambda — samgoodwin89 · 2026-10-27
- Alchemy Domain:用领域驱动设计把业务需求直接写成 Effect 代码 — samgoodwin89 · 2026-10-27
- Alchemy 全部约 2850 个 AWS binding 现已跨云可用 — samgoodwin89 · 2026-10-27
- 生产级 AI Agent 常规评测 95% 稳健,遭定向攻击后跌至 37% — njyx · 2026-10-27
- Grok Bot 分析 AI 评论、Codex 开浏览器批量拉黑,两 agent 接力工作流 — vista8 · 2026-10-27