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生效。


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