springcloud集成Hystrix
springcloud组件Hystrix 有容错功能;
当服务A调用服务B时,服务B由于某种原因调不通,这个时候为了给页面一个返回值或者要需要对具体的错误进行处理,会用Hystrix的容错功能;
1、首先在服务A的yml里面添加Feign对Hystrix 的支持
feign:
hystrix:
enabled: true #feign配合hystrix 使用,从而开启Feign对Hystrix的支持
2、定义一个类,这个类专门写具体的回退方法,注意,这个类需要实现具体的业务的FeignClient接口(也就是下图中的ProviderServiceProvider,这个类是调用服务B的一个中转接口类)


3、上述方式不能对服务B的异常进行捕获,换句话说,就是服务B为什么不能用,异常信息服务A这块不知道。于是可以用如下方式来对服务B的异常进行捕获。定义一个FeignClientFallbackFactory类,这个类里面对异常信息进行捕获,并且还可以处理步骤2的fallback回滚方法。注意:自定义的FeignClientFallbackFactory 类要实现FallbackFactory接口,并且重写其里面的create方法。


SpringCloud集成Hystrix
本文介绍如何在SpringCloud项目中集成Hystrix实现服务调用的容错处理。通过配置Feign支持Hystrix,并定义回退方法及异常捕获机制,确保服务间调用的稳定性和健壮性。
1141

被折叠的 条评论
为什么被折叠?



