Spring Cloud FeignClients 在应用程序启动期间无法正常工作

Posted

技术标签:

【中文标题】Spring Cloud FeignClients 在应用程序启动期间无法正常工作【英文标题】:Spring Cloud FeignClients doesn't work right during app start up 【发布时间】:2019-05-17 09:51:12 【问题描述】:

我使用 feign 在应用启动期间从其他微服务获取一些数据。我使用 @Service bean 的 @PostConstruct 方法来完成这项工作,但是当设置 feign.hystrix.enabled时,假装调用总是立即超时> 为真。当我将 feign.hystrix.enabled 设置为 false 时,一切都正确。配置 command.default.execution.isolation.thread.timeoutInMilliseconds 到大时间没用。可能存在哪些问题? feign 这个时候还没准备好工作?

图片: maveninvorkfeignconfig propertyerror

【问题讨论】:

将错误消息的输出添加到您的问题描述中 您可以尝试将 hystrix.command.default.execution.timeout.enabled 设置为 false 吗? 【参考方案1】:

当这种情况发生时,Spring 文档建议您使用 ObjectProvider https://docs.spring.io/spring-cloud-openfeign/docs/2.2.4.RELEASE/reference/html/#early-initialization-errors

根据您使用 Feign 客户端的方式,您可能会在启动应用程序时看到初始化错误。要解决此问题,您可以在自动装配客户端时使用 ObjectProvider。

【讨论】:

以上是关于Spring Cloud FeignClients 在应用程序启动期间无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

spring cloud 合约 - Feign Clients

使用 spring cloud feign 导致 java.lang.NoClassDefFoundError: feign/Logger

问题 spring-cloud-config 和 spring-cloud-bus

spring cloud集成nacos

spring-cloud-config-server

Spring Cloud实战Spring Cloud GateWay服务网关