Spring Boot Zuul:映射多个路由URL

时间:2017-06-12 10:53:24

标签: spring-boot spring-cloud netflix-zuul

我们正在使用Spring Boot和Zuul Proxy将API请求转发给API。示例配置如下:

zuul.routes.common.url=http://10.0.0.1:8081/common
zuul.routes.meta.url=http://10.0.0.2:8082/meta

每件事情都适用于此。为了平衡我们的负载并有效地利用底层服务器,我们希望指定多个URL作为配置的一部分,并为其中一个URL启用请求转发。确切地说,我们希望通过提供可以处理请求的逗号分隔的端点列表来配置下面给出的代理配置。

zuul.routes.common.url=http://10.0.0.1:8081/common,http://10.0.0.11:8081/common
zuul.routes.meta.url=http://10.0.0.2:8082/meta,http://10.0.0.12:8082/meta

但不幸的是,这样的配置导致"资源未找到错误"。

问题:

  1. 这是一种可能的配置吗?
  2. 如果没有,是否可以通过任何其他方式实现这一目标?
  3. 此致 Manjunath

    编辑:回答

    仅使用Zuul配置多个URL是不可能的。请求需要使用功能区进行负载平衡。以下是带有功能区的示例配置:

    zuul.routes.common.path=/**
    zuul.routes.common.serviceId=common
    common.ribbon.listOfServers=http://10.0.0.1:8081/common,http://10.0.0.2:8081/common
    

1 个答案:

答案 0 :(得分:0)

您想要使用功能区和属性client.ribbon.listOfServers。这是一个简单的例子

zuul:
  routes:
    users:
      path: /myusers/**
      serviceId: users

ribbon:
  eureka:
    enabled: false

users:
  ribbon:
    listOfServers: example.com,google.com