1、pom依赖:
<!-- 整合hystrix -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
<version>2.2.1.RELEASE</version>
</dependency>
注意SpringBoot和SpringCloud的版本要兼容
2、在启动类上加上注解:@EnableHystrix
3、在需要熔断的方法上加上注解:@HystrixCommand(fallbackMethod = "方法名")
import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@RequestMapping("hello")
@HystrixCommand(fallbackMethod = "fallBack")
public String hello() throws InterruptedException {
//制造异常来测试熔断,看是否执行熔断方法
int i = 1 / 0;
return "helloWorld!";
}
private String fallBack() {
return "程序错误";
}
}
4、访问
5、Hystrix默认超时时间
Hystrix
默认1秒
超时这个时间也是可以进行配置的:
application.yml
配置文件下:
#hystrix超时时间配置 (如果不配置的话默认是1000毫秒超时)
hystrix:
command:
default:
execution:
isolation:
thread:
timeoutInMilliseconds: 3000
参考链接:https://www.cnblogs.com/haha12/p/11690489.html