立足于SpringCloud.H + Netflix-Ribbon + Hystrix断路器(9)

原创
2019/12/11 11:41
阅读数 182

    《SpringCloud.H心法总纲》  

      继续上一篇,接下来Springcloud配置Netflix-Ribbon集成Hystrix断路器的功能。

1、添加依赖

<!--使用hystrix,测试断路器-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>

2、启动类

@EnableHystrix

3、controller层

修改之前的controller层,添加hystrix特有的fallbackMethod进行断路器

@RequestMapping(value = "/ribbon")
@RestController
public class LoadBalanceController {
    private Logger logger = LoggerFactory.getLogger(LoadBalanceController.class);

    @Autowired
    RestTemplate restTemplate;

    @GetMapping(value = "/toLoadBalance")
    @HystrixCommand(fallbackMethod = "ribbonHystrixError")
    public void toLoadBalance(){
        for (int i = 0; i < 10; i++){
            String str = restTemplate.getForObject("http://eureka-client/testRabbion",String.class);
            logger.info(str);
        }
    }

    public void ribbonHystrixError(){
        logger.info("ribbon error");
    }
}

4、启动测试

启动eureka-server,netflix-ribbon,调用接口

http://localhost:8075/ribbon/toLoadBalance

测试成功

展开阅读全文
打赏
1
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
1
分享
返回顶部
顶部