关于幂等性

1、什么是幂等性
2、 为什么需要幂等呢?
3、哪些场景需要保证幂等
4、幂等有什么缺点呢
5、如何保证幂等?
6、重复提交表单如何解决?

1、什么是幂等性

数学概念:
在这里插入图片描述

软件概念:服务执行一次和任意次的结果是一样的
通俗而言:多次请求。结果保持一致

2、 为什么需要幂等呢?

比如:付款功能。成功一次。 一次成功一次失败。
在这里插入图片描述

3、哪些场景需要保证幂等

适用范围:新增、修改、少部分删除.
场景举例:消息消费、接口重试等
select * from xXX where version id =1232131
update table set col1 = xx where col2 = abc

4、幂等有什么缺点呢

增加代码复杂度,并行改成了串行,降低执行效率。解决一致性问题

5、如何保证幂等?

全局ID。雪花算法。业务id

6.重复提交表单如何解决?

1乐观锁解决。版本号机制
2、防重表
3、分布式锁(redis 分布式锁,zookeeper的分 布式锁监听器,watcher)
4、token 令牌

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值