幂等性
⼀、什么是幂等性
幂等性就是⼀个⽅法短时间内被多次调⽤,但是产⽣的结果和只调⽤⼀次的结果相同,那么这个操作就是幂等的。⽐如select操作天然幂等。
⼆、请求⽅式的幂等性
在常见的4中请求⽅式中,get、delete、put请求都是幂等的,只有post请求不幂等。
html实现用户注册登录代码三、幂等性场景
1、查询操作:select是天然的幂等操作;
2、删除操作:删除操作也是幂等的,删除⼀次和多次删除都是把数据删除;
3、唯⼀索引:防⽌新增脏数据。⽐如:⽀付宝的⽤户账户和资⾦账户,每个⽤户只能有⼀个资⾦账户,给资⾦账户表中的⽤户ID加唯⼀索引,防⽌给⽤户创建多个资⾦账户。要点:唯⼀索引或唯⼀组合索引来防⽌新增数据存在脏数据(当表存在唯⼀索引,并发时新增报错时,再查询⼀次就可以了,数据应该已经存在了,返回结果即可);
4、token机制:防⽌请求重复提交;
5、悲观锁
6、乐观锁
7、分布式锁
在项⽬中推荐使⽤第4中⽅法保证接⼝幂等性,防⽌请求重复提交,在中添加可以应⽤全局,具体实现⽅式可以参考我的另⼀篇⽂章:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论