gpt4 book ai didi

java - 使用非 JVM 语言 (PHP) 的 Spring Cloud Eureka/使用 Eureka REST 端点发现服务

转载 作者:行者123 更新时间:2023-11-30 06:25:48 25 4
gpt4 key购买 nike

我在我的应用程序中使用 Spring Eureka 作为发现服务器,该应用程序是使用微服务架构实现的。这些服务主要是用 PHP 创建的,它们在启动时使用 Eureka REST 端点进行注册,每个服务每 30 秒发送一次心跳,一切正常。

现在,假设服务 A 想要与服务 B 对话。这个发现是如何发生的?目前我认为服务 A 应该向 http://localhost:8761/eureka/apps/service-B 端点发送 GET 请求,检索服务 B 的当前实例列表并在它们之间进行选择。这是正确的方法吗?负载均衡怎么样?我应该在我的服务中实现这一点,以便每次都请求不同的实例吗?还是随机选择?

任何帮助将不胜感激。

更新:看看 this library .

最佳答案

使用 Spring Cloud Netflix Sidecar 有一种简单的方法可以做到这一点:http://cloud.spring.io/spring-cloud-static/Camden.SR7/#_polyglot_support_with_sidecar

如果您想自己继续实现此功能,您有多种选择。通过客户端负载平衡,您可以从 Eureka 检索所有实例,然后在消费端随机选择一个实例。如果您想要服务器端负载平衡,您将需要一个额外的组件,例如 Zuul,并让它执行负载平衡和路由。 Zuul使用eureka配置,因此很容易集成。

关于java - 使用非 JVM 语言 (PHP) 的 Spring Cloud Eureka/使用 Eureka REST 端点发现服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47228231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com