3

我的 feign 客户端目前无法使用 Eureka 发现服务实例。我的配置包括以下注释:

@Configuration
@ComponentScan
@EnableAutoConfiguration
@EnableDiscoveryClient
@FeignClientScan

我包括以下依赖项(spring-cloud 1.0.0-BUILD-SNAPSHOT):

org.springframework.cloud:spring-cloud-starter-eureka
com.netflix.feign:feign-core
com.netflix.feign:feign-ribbon

据我所知,feign 客户端使用 a ,因此需要在配置文件(属性)ConfigurationBasedServerList中明确指定可用服务实例的地址。ribbon.serverList

但是,如果我明确指定,一切正常:

ribbon.NIWSServerListClassName: com.netflix.niws.loadbalancer.DiscoveryEnabledNIWSServerList

我的测试应用程序还使用了基于 Spring RestTemplate 的客户端,该客户端自动配置为使用启用了 Eureka 的 Ribbon 实现。奇怪的是,如果首先调用 RestTemplate,Feign 客户端工作正常(即找到服务实例)。看起来 RestTemplate 设置在某处执行了一些(静态)初始化,然后对 feign 客户端有利。

我是否错过了应该如何配置 Feign 支持的内容?

4

0 回答 0