【发布时间】:2012-06-10 21:53:56
【问题描述】:
我的 Java 应用程序在远程调用失败时需要重试逻辑。 这些远程调用是:
- 分散在整个应用程序中
- 属于不同的远程服务类。
此外,重试逻辑可能有不同的重试间隔和不同的重试尝试。
我需要一个通用的 retry() 实现,它可以根据调用位置进行适当的方法调用。下面是我正在寻找的简单代码说明。我知道我们可以尝试使用 java 反射来做到这一点,但是,是否有一个框架或开源可用的地方是可读的?
try {
ClassA objA = remoteServiceA.call(paramA1, paramA2, ...);
} catch (Exception e){
ClassA objA = (ClassA)retry(remoteService, listOfParams, ..); // generic method call
}
..
try {
ClassB objB = remoteServiceB.call(paramB1, paramB2, ...);
} catch (Exception e){
ClassA objB = (ClassB)retry(remoteService, listOfParams, ..); // generic method call
}
【问题讨论】:
标签: java reflection frameworks openframeworks