项目场景:使用依赖版本

	<spring.boot.version>2.6.7</spring.boot.version>
    <spring.cloud.version>2021.0.1</spring.cloud.version>
    <spring-cloud-alibaba-dependencies.version>2021.0.1.0</spring-cloud-alibaba-dependencies.version>

    spring-cloud-openfeign3.1.1

Feign远程调用fallback回调失败,无效果


问题描述

`最近在项目中使用到了@FeignClient,在里面使用了fallbackFactory 或者 fallback ,并且在被调用方模拟了个异常,发现fallbackFactory并没有起作用,没法达到服务降级的目的,application.yml加了

feign:
  hystrix:
    enabled: true #服务降级
  circuitbreaker:
    enabled: true # 上面无效 使用下面 服务降级
  sentinel:
    enabled: true # 上面无效 使用下面 服务降级
fallbackfactory 方式 无效

@Component
@FeignClient(name = "mkx-task", fallbackFactory = MkxTaskProvider.MkxTaskProviderFallback1.class)

fallback方式 无效
@Component
@FeignClient(name = "mkx-os", fallback = MkxOsProvider.MkxOsProviderFallback.class)

解决方案:

多种尝试后 在项目中加上 如下依赖 再加上上面的配置 100%就行了

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

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐