幂等的处理方式
一, 查询与删除操作是天然幂等
二, 唯一索引, 防止新增脏数据
三, token 机制, 防止页面重复提交
四, 悲观锁 for update
五, 乐观锁 (通过版本号 / 时间戳实现, 通过条件限制 where avai_amount-#subAmount#>= 0)
六, 分布式锁
七, 状态机幂等 (如果状态机已经处于下一个状态, 这时候来了一个上一个状态的变更, 理论上是不能够变更的, 这样的话, 保证了有限状态机的幂等.)
八, select + insert(并发不高的后台系统, 或者一些任务 JOB, 为了支持幂等, 支持重复执行)
来源: http://www.bubuko.com/infodetail-2958281.html