用途:为 API 与系统设计可安全重试、不会产生重复副作用的方案,常见于支付、订单、库存等场景。主要能力:说明什么是幂等(如 GET、DELETE、PUT 幂等,POST 非幂等);幂等键模式(客户端生成 UUID/ULID,服务端按 key 与 request_hash 存储并复用响应,键不匹配时返回 422);至多一次、至少一次与至多一次语义的取舍;重复检测策略(幂等键存储、自然键去重、数据库唯一约束、乐观锁);在途请求用锁或 processing 状态返回 409;并覆盖支付、消息队列、数据库操作与事件溯源等上下文。使用方式:客户端在首次请求前生成唯一且不可预测的键,失败时用同一键重试,新请求用新键;服务端用 Redis 或数据库存键、响应与 TTL,先查键存在则校验请求指纹并返回已存结果,不存在则处理并存储。限制:资料未提供具体框架实现、价格、平台或效果数据,仓库与安装命令暂未提供;大多数字段需按具体技术栈自行落实。
idempotency-patterns
编程与开发
更新于 10-16 05:42