接口幂等性的几种简单解决方案
2023-03-20 14:57:09 时间
1、接口幂等性是什么
接口幂等性并不是数学中的幂等,而是对于用户来说不论网络波动或者刷新页面后重新操作某个动作等,最终导致对同一接口产生多次请求, 但是对于用户而言并没有产生影响。也就是说重复多次操作的结果 = 一次操作的结果。
2、有哪些常见的接口幂等性例子
线上商城订单连续点击2次支付,但是只扣了一次钱;
页面重复提交选中后的数据,数据库最终只会存一份;
网络抖动造成后台收到2次创建订单请求,最终只会生成一条;
。。。
3、项目中简单应用方案
1、前段控制: 按钮点击一次后,置灰不可再点击
2、重定向:对于无后续操作的,直接跳转到另一个页面
3、token:token加redis(单个),进入到页面后,后端给前段一个token,前段再提交数据时带上token返回给后端;利用redis删除token操作判断是否是有效token
4、version:在对数据库进行更新操作时,带上version号,同时对版本号+1操作,这就需要数据库表里也需要有该字段
5、悲观锁:一般不建议,要不失去了并发作用
后续再补充吧,,,,
相关文章
- 详解电子表格中的json数据:序列化与反序列化
- Spring MVC数据绑定的扩展
- CLIP再创辉煌!西南交大&MSRA提出CLIP4Clip,进行端到端的视频文本检索!
- NeurIPS2021 VALUE:快来刷榜吧!微软提出视频多模态新基准,同时含检索、caption、QA等多个任务!
- Feed4JUnit 1.1.1发布 JUnit扩展
- 用yii2进行(curd)接口开发(普通类型)整个流程:
- 单细胞工具箱|singleR-单细胞类型自动注释(含数据版)
- spatial4j入门实战
- 容灾系列(六)——数据存储容灾建设
- 在真实环境中使用深度残余网络进行面部情感识别
- 基础网络云服务器&云数据库资源切换私有网络如何实现IP不变
- 实战篇:Oracle 配置透明网关访问 MySQL 详细教程
- 如何计算服务限流的配额
- 分区副本限流机制三部曲(源码篇)
- 「Spark从精通到重新入门(一)」Spark 中不可不知的动态优化
- 云时代,我们到底需要怎样的数据库?
- OushuDB 学习经验分享(二):与HAWQ的区别
- Firestorm - 腾讯自研Remote Shuffle Service在Spark云原生场景的实践
- CancerSCEM: 人类癌症单细胞表达图谱数据库
- GT Transceiver中的RX功能块简述