spring-boot - Spring Boot Zuul:如何在没有应用前缀的发现服务中注册多个 MS
问题描述
假设我有 2 个微服务:
ms-1
ms-2
ms-1 有 REST 服务 GET /api/myService1 ms-2 有 REST 服务 GET /api/myService2
我让它们都在 Spring Boot 发现服务(Eureka)中注册并与 Zuul 作为网关集成,因此它们被自动映射为:
/ms-1/api/myService1
/ms-2/api/myService2
这工作正常,没问题,但我希望在发现服务中注册的微服务在 Zuul 中可用,而无需应用程序名称前缀,因此在我的示例中,它们可以作为:
/api/myService1
/api/myService2
(路径中没有应用名称)
这是否可以通过 Eureka 发现服务(没有 yaml 配置来管理每个路径,而只是使用 Eureka 的自动发现服务?怎么做?
解决方案
我在文件中只有我的Consul
服务发现的设置,bootstrap.yml
并且一切正常,正如你在你的问题中想要的那样。
spring:
application:
name: zuul-sample
cloud:
consul:
enabled: true
host: localhost
我想你只需要告诉你的 zuul 应用程序如何找到你的 eurika。并且做到这一点bootstrap.yml
,而不是application.yml
。
推荐阅读
- javascript - 在移动设备上,localStorage 在执行其他操作几分钟后被删除
- r - 嵌套列表中的日期与 R 中数据框中的日期的子集
- amazon-web-services - Redshift 表适用于我的表的分配键和排序键
- swift - SwiftUI 在文本字段中心输入文本
- python - 能够在不使用类方法和静态方法的情况下更改类属性。那么它有什么用呢?
- jolt - jolt - 将键从嵌套对象复制或移动到顶层
- tensorflow - 使用参数分层后类不平衡和性能下降
- python - 使用 selenium 和 python 实现 google 的自动化
- azure - 使用链接访问 Azure Data Lake Container
- phpoffice-phpspreadsheet - PHPSpreadSheet 无法找到电子表格中存在的“命名范围”