前言
对于create类的操作,用唯一索引来保证;对 update类的操作,建议在 核心接口里基于自己的业务逻辑,配合上redis,来保证幂等性
如何设计幂等
既然这么多场景需要考虑幂等
,那我们如何设计幂等呢?
幂等意味着 一条请求的唯一性。不管是你哪个方案去设计幂等,都需要一个
全局唯一的ID
,去标记这个请求是独一无二的。
- 如果你是利用
唯一索引
控制幂等,那唯一索引是唯一的
- 如果你是利用
数据库主键控制
幂等,那主键是唯一的
- 如果你是
悲观锁
的方式,底层标记还是全局唯一的ID
全局的唯一性ID
uuid–redis自增–雪花算法等
幂等设计的基本流程
过滤一下已经收到的请求
,当然,请求一定要有一个全局唯一的ID
标记哈。
然后&#x