如何解决Legacy Eureka Server、Contemporary Spring Boot 和 Eureka 依赖不匹配
我们有一个旧的 Eureka 服务器(非常旧;比如 1.3.4 ~ 2015)在 EC2 上的一堆 Scala 应用程序中编组服务发现。
我们已经构建了一些使用最新依赖项的 Spring Boot Java 服务。我们必须将服务发现 URL 更改为旧的 (/eureka/v2),以便向 Eureka 服务器注册。然后我们在使用 FeignClient 时遇到了麻烦(我们在尝试访问 Rest 端点时遇到了 503)。我们删除了 feign 并决定通过 DiscoveryClient 获取服务 uri。这失败了,因为我们没有找到目标服务的实例:
discoveryClient.getInstances("our-awesome-service-name")
。它返回一个空列表。但是,如果我们获取所有服务并使用以下方法记录它们:
List<String> applications = discoveryClient.getServices();
我们可以看到所有服务,包括我们尝试使用匹配服务名称匹配的服务。
我们确定这是运行如此旧版本的 Eureka 服务器的结果(我们一两个月都无法升级它),但有没有人比我们更了解?版本兼容性是否有解决方法或明显缺失的接口?我们使用的是 spring boot 2.4.5 和 spring-cloud-starter-netflix-eureka-client 依赖项的后续版本。
提前致谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。