Cannot resolve configuration property ‘feign.hystrix.enabled‘ 解决 feign.hystrix.enabled=true 不生效的问题

2023-05-16

解决 feign.hystrix.enabled=true 不生效的问题

  • springcloud 2020之前的版本
  • springcloud 2020版本

由于springboot 版本前后 yml内容发现改变。

springcloud 2020之前的版本

下载相关源码,找到如下代码:

// 此代码位于 org.springframework.cloud.netflix.feign.FeignClientsConfiguration$HystrixFeignConfiguration
@Configuration
@ConditionalOnClass({ HystrixCommand.class, HystrixFeign.class })
protected static class HystrixFeignConfiguration {
	@Bean
	@Scope("prototype")
	@ConditionalOnMissingBean
	@ConditionalOnProperty(name = "feign.hystrix.enabled", matchIfMissing = false)
	public Feign.Builder feignHystrixBuilder() {
		return HystrixFeign.builder();
	}
}

可以看到,开启 HystrixFeign 的条件有2个:

@ConditionalOnClass({ HystrixCommand.class, HystrixFeign.class })

@ConditionalOnProperty(name = “feign.hystrix.enabled”, matchIfMissing = false)

第二项似乎哪里除了问题导致 HystrixFeign 没有启用。

解决办法也很简单,在自己的项目中手动开启即可:

@Configuration
public class SybnHystrixFeignConfiguration {
    @Bean
    @Scope("prototype")
    public Feign.Builder feignHystrixBuilder() {
        return Feign.builder();
    }
}

不必非要使用 feign.hystrix.enabled=true




springcloud 2020版本

在这里插入图片描述
发现里面压根就没有 上列配置,直接使用下列配置

在Feign中开启 hystrix熔断
在这里插入图片描述
问题解决

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cannot resolve configuration property ‘feign.hystrix.enabled‘ 解决 feign.hystrix.enabled=true 不生效的问题 的相关文章

随机推荐