场景: | 支付宝二维码去付款,那么这个二维码代表这一次付款,如果这个二维码不小心被扫描多次,那么也应该只扣款一次,如果扣了两次款,那么我们的资金就损失了。 再比如,我们的一个天猫订单去支付,不小心连续点击了两次支付按钮,那么这次支付也应该扣款一次。 |
意思: | 在我们实际系统中有很多操作,是不管做多少次,都应该产生同样的效果的同时返回一样的结果。 这种事情在高并发的互联网环境下,更要得到保证。如:我提交了一个请求,不能由于网络重发等原因产生多个请求结果,我插入的数据不能由于并发多插入等等。 |
具体事例:
1. 前端重复提交选中的数据,应该后台只产生对应这个数据的一个反应结果。 |
2. 我们发起一笔付款请求,应该只扣用户账户一次钱,当遇到网络重发或系统bug重发,也应该只扣一次钱。 |