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

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

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

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的),增加依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>

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简直一模一样

相关文章
|
3月前
|
缓存 数据安全/隐私保护 Sentinel
断路精灵:探秘Sentinel熔断策略的神奇效果
断路精灵:探秘Sentinel熔断策略的神奇效果
42 0
|
17天前
|
Java 数据安全/隐私保护 Sentinel
微服务学习 | Spring Cloud 中使用 Sentinel 实现服务限流
微服务学习 | Spring Cloud 中使用 Sentinel 实现服务限流
|
2月前
|
运维 监控 Java
服务雪崩预防Sentinel
服务雪崩预防Sentinel
38 1
|
3月前
|
监控 算法 Java
sentinel 服务限流工作原理
sentinel 服务限流工作原理
|
3月前
|
监控 Java API
Sentinel熔断限流真的太丝滑了
Sentinel熔断限流真的太丝滑了
106 0
|
4月前
|
监控 Java Sentinel
springcloud4-服务熔断hystrix及sentinel
springcloud4-服务熔断hystrix及sentinel
26 0
|
5月前
|
Sentinel
一文速通Sentinel熔断及降级规则
一文速通Sentinel熔断及降级规则
|
18天前
|
Java API Nacos
第十二章 Spring Cloud Alibaba Sentinel
第十二章 Spring Cloud Alibaba Sentinel
27 0
|
1月前
|
SpringCloudAlibaba 监控 Java
SpringCloud Alibaba微服务-- Sentinel的使用(保姆级)
SpringCloud Alibaba微服务-- Sentinel的使用(保姆级)
|
2月前
|
Java Nacos Sentinel
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(九)Nacos+Sentinel+Seata
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(九)Nacos+Sentinel+Seata
235 0