gpt4 book ai didi

java - Hystrix 回退方法最佳实践

转载 作者:行者123 更新时间:2023-11-30 01:45:39 25 4
gpt4 key购买 nike

好吧,我找不到关于这个主题的任何有用的 Material ,我发现一大堆文章有一个用 @HystrixCommand 注释的方法,并定义了一个后备方法。

我发现的另一个解决方案是使用@DefaultProperties(defaultFallback = "fallbackMethod"),但这样做的问题是这些方法需要具有兼容的返回类型。

不幸的是,在我的服务中,我有许多具有完全不同签名的方法,而且我还需要获取可抛出的对象(在文档中提到,您不能为默认后备方法提供任何参数)。这些方法看起来像这样:

@Service
@RequiredArgsConstructor
public class MyService {

private final FeignClient feignClient;

@Override
public String methodA(final CustomObjectA o, final String entity) {
...
}


@Override
public String methodB(final String collection, final Map<String, Object> requestBody) {
...
}

@Override
public String methodC(final String collection, final String id, final Map<String, Object> requestBody) {
...
}
}

and ofc 我在服务中有超过 3 个方法 def...

我真正想要避免的是创建 20 个 hystrix 默认后备方法。

是否有一种方法可以为所有方法定义标准回退,无论它们具有什么签名,还是我坚持为每个方法定义一个回退方法?

提前致谢!!

最佳答案

您必须为每个方法实现回退。

但是,使用 FallbackFactory 可能会使这一过程变得更容易,并允许每个方法调用一个可重用的方法。

如果每种方法的 hystrix 回退都相同,也许您并不真正想要 hystrix 回退。所有的 try catch 都可能解决同样的问题。

关于java - Hystrix 回退方法最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58098315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com