问题描述
似乎网关无法使用 eureka.instance.appname 解析在 eureka 服务器中注册的应用程序。在我们的例子中,我们在两个不同的环境(uat 和 qa)中部署了应用程序,但两者都将在一个集群 eureka 服务器上注册。我们使用 eureka.instance.appname 区分两个环境中的应用程序。一个注册为service_app_uat,另一个注册为service_app_qa,但是spring.application.name 是service.app。 Eureka 能够从两个不同的环境注册应用程序就好了,但是 Spring Cloud Gateway 无法从 Eureka 解析这两个注册的实例。但是,如果我们从两个注册为 service_app 的环境中删除了 eureka.instance.appname 和两个我们不想要的实例。
有没有其他方法可以在 Eureka 中使用自定义服务名称注册应用程序?
解决方法
你不能只利用 Spring Profiles 并通过 spring.application.name 提供不同的命名吗?