如何解决如何防止@FeignClient 接口中的某些异常触发 hystrix 回退?
最近,我被指示在我们的 Spring Boot 项目中为我们现有的 feign 客户端定义一些后备。我做了一些研究,显然 Hystrix
是要走的路。
将它与项目集成后,我注意到每次我都没有收到目标服务的期望响应(例如,当我收到 HTTP 状态为 403 而不是 200 的响应时) ,客户端切换到回退方法。
嗯,在我们的案例中,这不是所需的流程。在寻找解决方案后,我确实发现 HystrixCommand
是处理此问题的正确方法。根据 this 我可以使用 @HystrixCommand 来防止触发回退。
我这样做了,但它似乎不起作用。
我的问题是如何配置 hystrix 以满足我的需求。
这是我目前想到的简单版本:
@FeignClient(name="test-client",fallback=TestClientFallback.class)
public interface TestClient
{
//---I have emplemented a custom FeignDecoder to throw TestException
@HystrixCommand(ignoreExceptions=TestException.class)
Boolean isUserActive(Integer userId);
public class TestClientFallback implements TestClient
{
@Override
public Boolean isUserActive(Integer)
{
//---default fail over scenario
}
}
}
提前致谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。