本文目录
背景
简单幂等实现
2.1 数据库记录判断
2.2 并发问题解决
- 通用幂等实现
3.1 设计方案
3.1.1 通用存储
3.1.2 使用简单
3.1.3 支持注解
3.1.4 多级存储
3.1.5 并发读写
3.1.6 执行流程
3.2 幂等接口
3.3 幂等注解
3.4 自动区分重复请求
3.5 存储结构
3.6 源码地址
背景
回答群友的问题:幂等有没有什么通用的方案和实践?
关于什么是幂等,本文就不再阐述了。相信大家都知道,并且也都遇到过类似的问题以及有自己的一套解决方案。
基本上所有业务系统中的幂等都是各自进行处理,也不是说不能统一处理,统一处理的话需要考虑的内容会比较多。
我个人认为核心的业务还是适合业务方自己去处理,比如订单支付,会有个支付记录表,一个订单只能被支付一次,通过支付记录表就可以达到幂等的效果。
还有一些不是核心的业务,但是也有幂等的需求。比如网络问题,多次重试。用户点击多次等场景。这种场景下还是需要一个通用的幂等框架来处理,会让业务开发更加简单。