a服务远程调用b服务,b服务远程调用c服务的场景下,
熔断 -- 当c服务不可访问的概率达到阈值,开启熔断,短时间内b服务并不会真实调用c服务,基于业务需求自写一套返回值。但是并不会一直熔断,类似于有个监听心痛模式,发现c服务可用后,不可访问的概率降低,熔断失效。
解决问题:b不用每次都向c发起调用,防止多请求累计在b,一定程度上保障了b服务的安全。
降级 -- 每次的b服务调用c服务时,都会真实调用c服务,c服务服务不可访问或访问超时,直接调用fallback方法。
解决问题:一定程度上解决了c服务不可用的问题,但是并没有阻止多请求累计在b的情况
现阶段fegin上@FeignClient的fallback就是上述降级的用法,对于熔断并没有涉及。
疑问:Feign没有对熔断的自定义处理方式?还是封装在内部了?
以上就是我的个人理解,感觉怪怪的,请大家指教一二,谢谢~