2017-06-07 91 views
0

您好我有我曾尝试以下没有运气,可以有多个服务器的路由...zuul多个URL一个路径

zuul.routes.example.path=/example/** 
zuul.routes.example.serviceId=example 
example.ribbon.eureka.enabled=false 
example.ribbon.eureka.listOfServers=http://127.0.0.1/metrics,http://127.0.0.1/info 

这只是返回以下错误:

Caused by: com.netflix.client.ClientException: Load balancer does not have available server for client: example

我使用尤里卡为大多数路线,但对于这一个特别我不能使用尤里卡。

是否有可能让zuul在两个url之间进行负载平衡?

解决

下面的答案解决了配置这个问题,不过,我想我是用弹簧引导起动父母提起,我也不得不依赖关系管理升级到Camden.SR7

<dependencyManagement> 
    <dependencies> 
     <dependency> 
     <groupId>org.springframework.cloud</groupId> 
     <artifactId>spring-cloud-dependencies</artifactId> 
<!--   <version>Brixton.SR5</version> --> 
     <version>Camden.SR7</version> 
     <type>pom</type> 
     <scope>import</scope> 
     </dependency> 
    </dependencies> 
    </dependencyManagement> 

回答

2

是的,你可以。尝试以下属性而不是你的属性。

zuul.routes.example.path=/example/** 
zuul.routes.example.serviceId=example 
example.ribbon.NIWSServerListClassName=com.netflix.loadbalancer.ConfigurationBasedServerList 
example.ribbon.listOfServers=http://127.0.0.1/metrics,http://127.0.0.1/info 
+0

不快乐我很害怕,我仍然得到了同样的错误:/ – Alex

+0

这是否意味着我不能使用尤里卡一些和本地配置为别人? - https://github.com/spring-cloud/spring-cloud-netflix/issues/564 – Alex

+0

上面的链接问题是非常古老的问题。以上属性适用于我。只有示例服务可用于本地配置,其他服务将在尤里卡上运行。 –