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

相关文章
|
22天前
|
缓存 数据安全/隐私保护 Sentinel
断路精灵:探秘Sentinel熔断策略的神奇效果
断路精灵:探秘Sentinel熔断策略的神奇效果
45 0
|
22天前
|
Java 数据安全/隐私保护 Sentinel
微服务学习 | Spring Cloud 中使用 Sentinel 实现服务限流
微服务学习 | Spring Cloud 中使用 Sentinel 实现服务限流
|
22天前
|
运维 监控 Java
服务雪崩预防Sentinel
服务雪崩预防Sentinel
40 1
|
22天前
|
SpringCloudAlibaba 监控 Java
SpringCloud Alibaba Sentinel实现熔断与限流--学习笔记
SpringCloud Alibaba Sentinel实现熔断与限流--学习笔记
37 0
|
22天前
|
SQL Go 数据库
【Sentinel Go】新手指南、流量控制、熔断降级和并发隔离控制
【2月更文挑战第12天】随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。
75 0
|
22天前
|
监控 算法 Java
sentinel 服务限流工作原理
sentinel 服务限流工作原理
|
22天前
|
监控 Java API
Sentinel熔断限流真的太丝滑了
Sentinel熔断限流真的太丝滑了
116 0
|
22天前
|
监控 Java Sentinel
springcloud4-服务熔断hystrix及sentinel
springcloud4-服务熔断hystrix及sentinel
28 0
|
22天前
|
Java API Nacos
第十二章 Spring Cloud Alibaba Sentinel
第十二章 Spring Cloud Alibaba Sentinel
39 0
|
22天前
|
SpringCloudAlibaba 监控 Java
SpringCloud Alibaba微服务-- Sentinel的使用(保姆级)
SpringCloud Alibaba微服务-- Sentinel的使用(保姆级)