简单总结,
请求的响应结果和对网络的访问次数无关,是为了防止重复请求形成脏数据,或者脏读结果。
常见于,多次提交订单、或者扣款(多次支付只扣一次款)
但带来的不足是,逻辑复杂,并行改为串性,执行率降低。
场景:
查询 和删除 是幂等的操作,不管查询需要保证数据不变。
乐观锁和悲观锁。 乐观锁 udpate set version +1 ; 悲观锁 selset * from t_user where id = 1 for update;
token机制, 用户登录时后台创造token返回前端, 前端接口发送请求时候,带上token ,后端检测与后端保存的token,对比token一致 则请求成功,并删除后端token。前端第二次发送请求是,token就会不一致,后端检测到就会拒绝第二次访问。
唯一标识。 对外api中,请求字段中需要包换一个唯一的标识字段,该字段在数据库表中属于唯一索引。在访问接口时候,后端会先根据该字段查询时候已经包含,包含了则已经请求过。负责插入新的请求。