SpringCloud趁热总结--熔断Hystrix

在前一步的基础上实现熔断功能
回顾
在Eureka总结中构建了两个服务:用户服务和博客服务,并实现了远端调用。想要实现熔断需要在调用端,即博客服务中做以下修改,贼简单。
0.配置的修改
application.properites中添加

#熔断配置
feign.hystrix.enabled=true

1.为UserRemote接口添加熔断类,实现熔断时执行的代码,这里需要注意的地方是@Component注解,实现UserRemote接口,和参数匹配

@Component
public class UserRemoteHystrix implements UserRemote {
    @Override
    public String findByUsername(@RequestParam(value = "name") String name) {
        return "熔断啦";
    }
}

2.在UserRemote中配置熔断类,fallback属性,注意fallback属性是不带双引号的。

@Service
@FeignClient(name="blog-viewer",fallback = UserRemoteHystrix.class)
public interface UserRemote {
    @RequestMapping("/findByUsername")
    public String findByUsername(@RequestParam(value="name")String name);
}

测试过程
依次开启注册中心,用户服务和博客服务,先发一个myList请求试试,通了之后手动关闭用户服务,再发请求,发现熔断。返回的结果为null

猜你喜欢

转载自blog.csdn.net/Lqq77s/article/details/85069039