一、需要避免的问题
1.用户多次点击提交
2.用户退回页再次提交
3.微服务调用,由于网络问腿,导致请求失败,feign触发重试机制
…
二、一些自带幂等的操作
1.同样的select,delete语句,
2.固定的update语句 ,把1改成0等等
3.insert语句以ID为主键插入。
三、如何保证幂等
1.令牌机制
获得令牌,对比令牌,删除令牌应该是个原子性操作
2.锁
1.悲观锁
select * from tab where id =1 for update
2,乐观锁
带版本号的更新
3.唯一约束
1.数据库唯一约束
主键,唯一索引等
2.redis set防虫
例如MD5值唯一等