通用幂等组件设计
2023-12-04 16:21:37 0 举报
通用幂等组件设计
作者其他创作
大纲/内容
DefaultIdempotentRepository幂等默认仓库实现类
@Overridevoid update(IdempotentRecord idempotentRecord);@Overridefont color=\"#323232\
RepeatedSubmitException重复提交异常
RepeatedSubmitException(String message)
IdempotentRecordRedisRepositoryImplRedis幂等服务实现类,适合一般场景
@OverrideIdempotentRecordResultVO save(IdempotentRecordDTO dto);@OverrideIdempotentRecordVO getOne(GetIdempotentRecordDTO dto);
ExecutionException执行异常
ExecutionException(String message)
bosid+bizModule+bizKey保证唯一性@EnableIdempotent 开启幂等
Mysql
IdempotentSerializer 序列化器接口口
Redis
DefaultIdempotentExecutor 默认幂等执行器
@Overridefont color=\"#323232\
NilIdempotentExecutor 空幂等执行器
IdempotentInterceptor 幂等方法拦截器
// 定义切点+ @Pointcut(\"@annotation(Idempotent)\")void idempotentPointCut();// 环绕通知+ @Around(\"idempotentPointCut()\")
DefaultIdempotentSerializer默认json序列化器
@Override-<T> String serializeResult(T data);@Overridefont color=\"#323232\
IdempotentRepository 幂等仓库接口
ConcurrentRequestException并发请求异常
ConcurrentRequestException(String message)
IdempotentRecordDbRepositoryImplDB幂等服务实现类,适合强一致场景
@OverrideIdempotentRecordResultVO save(IdempotentRecordDTO dto);@OverrideIdempotentRecordVO getOne(GetIdempotentRecordDTO dto);
IdempotentExecutorFactory 幂等执行工厂
// 根据幂等执行类型创建执行器+ IdempotentExecutor create(ExecutorType e);
DefaultIdempotentKeyParser默认参数解析器
幂等组件架构设计
@Idempotent 幂等注解
- executorType 执行方式(DB/Redis)- bosid 商户id- bizModule 业务模块- bizKey 业务key- handleType 处理方式(抛异常/返回执行结果)- timeout 超时时间(redis可自定义)- timeUnit 时间单位
IdempotentKeyParser 参数解析器接口
IdempotentExecutor 幂等执行器接口
IdempotentRecordProvider幂等dubbo接口
0 条评论
下一页