一、定义
HTTP/1.1中对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的副作用,也就是说多次重复请求的作用和一次请求的相同。
二、业务应用的梳理
1)、客户端或者用户的频繁提交?
1、首先客户端会有防抖机制处理;(客户端做事件的延时触发,比如考虑人的手速0.2秒内才执行事件函数体);
2、服务代理层做了令牌限制,需要根据自己的appid、ak、sk字段申请令牌token,每次请求必须携带合法的令牌;
3、业务层在入口做了防重复提交的锁,只是做单用户提交的频率的限制,保证非人为的速度的提交频率控制;
4、在业务侧服务内订单的db层需要指定业务侧的订单号为唯一索引;
5、生成订单号后会去财务侧获取财务单号,用在用户支付是的唯一凭证;(此时业务测的提交订单流程已经结束)
6、财务测订单号也设计为唯一索引;
7、财务页面支付完成后是通过异步消息推送订单支付结果;
(衍生kafka的消息队列的机制)
参考链接:https://www.cnblogs.com/geyifan/p/6128425.html
网友评论