您当前的位置: 首页 >  spring

墨家巨子@俏如来

暂无认证

  • 1浏览

    0关注

    188博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

八.SpringCloudAlibaba极简入门-Sentinel兼容Feign进行服务熔断

墨家巨子@俏如来 发布时间:2020-04-26 07:46:41 ,浏览量:1

老鸟飞过 , 只做学习使用,欢迎交流

1.概述

Spring Cloud Alibaba是Spring Cloud的一个子项目,OpenFeign是Spring Cloud的客户端负载均衡器,使用Spring Cloud Alibaba依然可以很方便的集成OpenFeign,如果要使用OpenFeign作为服务客户端负载均衡,那么我们需要考虑OpenFeign开启Sentinel进行服务熔断降级。

2.OpenFeign兼容Sentinel

OpenFeign与Sentinel组件集成除了引入sentinel-starter依赖关系之外,还需要在属性文件中启用Sentinel支持:feign.sentinel.enabled=true

2.1.导入依赖

修改工程 springcloudalibaba-pay-server-1030 (这个工程之前我们是集成了OpenFeign的),增加依赖


    com.alibaba.cloud
    spring-cloud-starter-alibaba-sentinel

2.2.开启Sentinel

修改yml配置开启Sentinel

feign:
  sentinel:
    enabled: true #熔断
2.3.给Feign接口降级

这里跟Feign开启Hystrix降级一样,还是可以使用fallback属性

@FeignClient(value = "user-server",fallback = UserClientFallback.class)
public interface UserClient {

    @GetMapping("/user/{id}")
    User getById(@PathVariable Long id);
}

编写降级类,返回托底数据

@Component
public class UserClientFallback implements UserClient {    
	@Override    
	public User getById(Long id) {        
		return new User(-1L,"无此用户","无此用户");    
	}
}
3.做个小结

到这里我们已经完成了Feign和Sentinel的兼容使用,是不是很简单呢,因为它的集成方式和Hystrix简直一模一样

关注
打赏
1651329177
查看更多评论
立即登录/注册

微信扫码登录

0.0376s