Hystrix服务降级

1.是什么

整体资源快不够了,忍痛将某些服务先关掉,待渡过难关,再开启回来。

 

服务降级处理是在客户端实现完成的,与服务端没有关系
修改springcloud-api工程,根据已经有的DeptClientService接口新建一个实现了FallbackFactory接
口的类DeptClientServiceFallbackFactory
【注意:这个类上需要@Component注解!!!】

2.相关的配置

修改springcloud-api工程:

根据已经有的DeptClientService接口新建一个实现了FallbackFactory接
口的类DeptClientServiceFallbackFactory

 
  1. package com.csh.springcloud.service;

  2. import com.csh.springcloud.pojo.Dept;

  3. import feign.hystrix.FallbackFactory;

  4. import org.springframework.stereotype.Component;

  5. import java.util.List;

  6. @Component

  7. public class DeptClientServiceFallbackFactory implements FallbackFactory<DeptClientService> {

  8. //这里提供的降级服务是当服务器崩了后停了之后客户端再来访问时还是能够访问得到降级信息,不至于服务崩溃了

  9. @Override

  10. public DeptClientService create(Throwable throwable) {

  11. return new DeptClientService() {

  12. @Override

  13. public boolean addone() {

  14. return false;

  15. }

  16. @Override

  17. public Dept findbyid(int id) {

  18. return new Dept().setDeptno(id).setDname(“降级”).setDb_source(“降级库”);

  19. }

  20. @Override

  21. public List<Dept> findall() {

  22. return null;

  23. }

  24. };

  25. }

  26. }

修改springcloud-api工程,DeptClientService接口在注解 @FeignClient中添加fallbackFactory属性值

 
  1. @FeignClient(value = "SPRINGCLOUD-PROVIDER-DEPT",fallbackFactory = DeptClientServiceFallbackFactory.class)

在consumer中修改yml文件:

feign:
hystrix:
enabled: true

3.测试一下

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jakeonil

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值