spring cloud(二)-服務消費(Feign 斷路器)
阿新 • • 發佈:2018-12-21
前言
斷路器: 在分散式架構中,當某個服務單元發生故障之後,通過斷路器的故障監控,向呼叫方返回一個錯誤響應,而不是長時間的等待。這樣就不會使得執行緒因呼叫故障服務被長時間佔用不釋放,避免了故障在分散式系統中的蔓延。
1、 Feign使用Hystrix
不需要在Feigh工程中引入Hystix,Feign中已經依賴了Hystrix。 使用@FeignClient註解中的fallback屬性指定回撥類
//定義的FeignClient @FeignClient(value = "compute-service", fallback = ClientCallBackHystrix.class) public interface AddClient { @RequestMapping(method = RequestMethod.GET, value = "/add") Integer add(@RequestBody Test input); } //定義AddClient 回撥方法,定義一個class類實現AddClient @Component public class ClientCallBackHystrix implements AddClient { @Override public Integer add(@RequestBody Test input) { return -1; } }