接口幂等:重复提交订单怎么办
支付、下单、创建任务这类接口必须考虑重复提交。网络重试、用户连点、消息重复投递都会触发同一个动作多次。
常见做法是客户端传幂等键,服务端用唯一索引或 Redis SETNX 保证同一业务请求只处理一次。
idem_key UNIQUE(user_id, request_id)幂等不是简单地挡第二次请求。第二次请求最好返回第一次处理结果,这样调用方不用猜到底成功还是失败。
凡是有外部副作用的接口,都要把重复调用当成必然发生,而不是异常情况。
版权申明
本文系作者 @blogger 原创发布在接口幂等:重复提交订单怎么办。未经许可,禁止转载。
评论
-- 评论已关闭 --
全部评论