Hystrix:停止更新,不推荐使用。
resilience4j:官网推荐用,但是国内比较少。
sentinel:用的比较多,推荐使用。
服务超时或者宕机,需要服务降级,客户端出故障,客户端需要降级。
通过@HystrixCommand注解controller的接口,可以进行服务降级与服务熔断,服务降级一般设置在客户端,熔断可能是设置在服务端比较好吧(不太清楚),在客户端的service接口添加@FeignClient注解添加fallback属性也可以进行服务降级。
要添加服务降级与服务熔断,需要在启动类添加 @EnableHystrix,如果是Feign配置Hystrix,要在yml添feign.hystrix.enabled=true
服务熔断:在指定时间窗口期内指定请求数的指定失败率达到某个值即触发熔断,当默认10秒之后,会尝试切换半开放状态,如果请求没有问题,那么熔断保险丝将会关闭,否则继续开启。
resilience4j和sentinel待补充.