接口 IdempotentIdGenerate
- 所有已知实现类:
SimpleIdempotentIdGenerate
public interface IdempotentIdGenerate
幂等id生成器
同一个组的同一个场景下只会存在一个相同的idempotentId重试任务, 若存在相同的则上报服务后会被幂等处理
比如:
组: AGroup
场景: BScene
时刻1: 上报一个异常 idempotentId: A1 状态为重试中
时刻2: 上报一个异常 idempotentId: A2 状态为重试中,可以上报成功,此时存在两个重试任务
时刻3: 上报一个异常 idempotentId: A1 不会新增一个重试任务,会被幂等处理
时刻4: idempotentId: A1 重试完成, 状态为已完成
时刻5: 上报一个异常 idempotentId: A1 状态为重试中, 新增一条重试任务
-
方法概要
修饰符和类型方法说明idGenerate(IdempotentIdContext context) 参数列表为Object一维数组, 下面说明每一个下标代表的数据含义 0: 场景名称: scene(String) 1: 执行器名称: targetClassName(String) 2: 参数列表: args(Object[]) 3: 执行的方法名称: methodName(String) scene, targetClassName, args, executorMethod.getName()
-
方法详细资料
-
idGenerate
参数列表为Object一维数组, 下面说明每一个下标代表的数据含义 0: 场景名称: scene(String) 1: 执行器名称: targetClassName(String) 2: 参数列表: args(Object[]) 3: 执行的方法名称: methodName(String) scene, targetClassName, args, executorMethod.getName()- 参数:
context-IdempotentIdContext幂等id生成器上下文- 返回:
- idempotentId
- 抛出:
Exception
-