Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring cloud 如何在特定@FeignClient上禁用eureka查找_Spring Cloud_Spring Cloud Netflix_Spring Cloud Feign - Fatal编程技术网

Spring cloud 如何在特定@FeignClient上禁用eureka查找

Spring cloud 如何在特定@FeignClient上禁用eureka查找,spring-cloud,spring-cloud-netflix,spring-cloud-feign,Spring Cloud,Spring Cloud Netflix,Spring Cloud Feign,我有一个微服务,它主要使用@FeignClient与其他微服务对话。使用Eureka的服务发现机制,这项工作非常出色 现在我迫切需要使用@FeignClient连接到外部系统,并且仍然使用如下所示的配置执行负载平衡 外国客户: @FeignClient("externalServers") public interface ExternalServersClient { @RequestMapping(method = RequestMethod.GET, value = "/someE

我有一个微服务,它主要使用
@FeignClient
与其他微服务对话。使用Eureka的服务发现机制,这项工作非常出色

现在我迫切需要使用
@FeignClient
连接到外部系统,并且仍然使用如下所示的配置执行负载平衡

外国客户

@FeignClient("externalServers")
public interface ExternalServersClient {
    @RequestMapping(method = RequestMethod.GET, value = "/someExternalUrl")
    ResponseEntity<Object> callExternalServer();
}
从我看过的许多文档中,建议禁用eureka以允许从可用的服务器列表中获取负载平衡。我做了跟进,并使用以下配置禁用它

application.yml

externalServers:
  ribbon:
    listOfServers: server1:18201,server2:18201
ribbon:
  eureka:
    enabled: false
这使我能够为针对外部系统的外部客户端执行负载平衡,但需要使用服务发现的所有其他外部客户端都已中断

是否有任何方法可以单独为外部系统禁用eureka for Foreign client设置,但允许它为其他客户端正常运行


提前谢谢

在spring cloud netflix 1.2.0(Camden发行系列的一部分)中,添加了设置服务器列表实现的功能

您将能够执行以下操作:

externalServers:
  ribbon:
    NIWSServerListClassName: com.netflix.loadbalancer.ConfigurationBasedServerList
    listOfServers: server1:18201,server2:18201

可能在8月或9月发布。

感谢您的快速回复!在1.2.0可用之前,我是否能够使用
@RibbonClient
以及
@faignclient
自定义配置?或者更好。。。我将尝试根据您所做的更改替换默认的RibbonConfiguration@斯宾塞·吉布做这个工作?我可以在那里输入一个服务名称,这是eureka服务吗?超过名单?所以类似于
consult-proxy.ribbon.NIWSServerListClassName:com.netflix.loadbalancer.ConfigurationBasedServerList
consult-proxy.ribbon.listOfServers:server1:18201,server2:18201