spring cloud,用feign客户端调用服务hystrix不能生效的问题

最近在照着网上的贴子做spring cloud ,用feign客户端调用 服务时发现hystrix不起作用,当时我的配置文件是application.yml,当配置

feign:
  hystrix:
    enabled: true

idea提示unknow property,网上查了好多文章都是清一色这么配置,后来发现都是一些人抄袭别人的文章,没有经过测试直接写在自己的博客里,美其名约原创,害人害已。

后来查找到源码


org.springframework.cloud.netflix.feign包下的FeignClientsConfiguration.class

里面

@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();
  }
 }

发现这个注解与其它的不一样,其它注解用的是@Conditional,所以觉的只能配置在application.property

所以又创建了个application.property文件直接配置

feign.hystrix.enabled=true

启动程序,经测试hystrix生效。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章