spring cloud,用feign客戶端呼叫服務hystrix不能生效的問題
阿新 • • 發佈:2019-02-16
最近在照著網上的貼子做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
public Feign.Builder feignHystrixBuilder() {
return HystrixFeign.builder();
}
}
發現這個註解與其它的不一樣,其它註解用的是@Conditional,所以覺的只能配置在application.property
所以又建立了個application.property檔案直接配置
feign.hystrix.enabled=true
啟動程式,經測試hystrix生效。