1. Hystrix简介
Spring Cloud Hystrix 是Spring Cloud Netflix 子项目的核心组件之一,具有服务容错及线程隔离等一系列服务保护功能
Hystrix具备服务降级、服务熔断、线程隔离、请求缓存、请求合并及服务监控等强大功能
启用Hystrix: 添加注解@EnableHystrix
实现服务降级:通过@HystrixCommand实现降级处理
fallbackMethod:指定服务降级处理方法;
ignoreExceptions:忽略某些异常,不发生服务降级;
定义降级执行的方法:要求降级方法与目标方法参数及返回值保持一致
- 触发降级的条件
FAILURE:执行失败,抛出异常
TIMEOUT:执行超时,默认1秒
SHORT_CIRCUITED:熔断器状态为Open
4.Hystrix超时设置
- 默认情况下,hystrix熔断器超时时间是1S,超过这个时间就会触发服务降级。
- 连接超时时间connectTime
- 业务处理超时时间readTimeout
- 熔断时间>=总时间(连接+业务处理)
- 创建监控微服务,添加依赖:spring-cloud-starter-netflix-hystrix-dashboard