在做支付和订单类业务时,重复请求几乎无法避免:用户双击、网关重试、MQ 至少一次投递都会导致同一操作到达多次。想了解大家在生产实践中把幂等做到了哪一层:1. 只靠入口 token 去重(Redis DEL),还是加了数据库唯一索引兜底?2. 更新类操作用乐观锁(version/WHERE 条件)够用吗?3. 状态机校验和补偿任务是不是必需?如果只做其中一层,哪一层的性价比最高?
相似问题