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