使用 Neflix Eureka 的自定义服务发现

Custom service discovery using Neflix Eureka

目前,我正在我的组织中进行 POC。我们的目标是实施服务发现。出于这个原因,我正在探索尤里卡。 Eureka 非常适合无条件的服务发现。我们的需求是实现有条件的服务发现。

我们当前的实现:

这是一个直接的实现,我们有多个客户端使用由单个微服务公开的服务 Service-A.

因为我们计划引入一个新的微服务 Service-B,其合同与 Service-A 相同。有了这个新服务,客户将不得不实施逻辑来根据一些参数来识别要调用哪个服务。每个客户端都必须实现这个逻辑:

这就是服务发现的用武之地。我正在试用 Eureka,但找不到任何文档或资源表明我们可以为服务注册或服务发现提供自定义逻辑。我什至不确定 Eureka 是否可以实现我想做的事情。 这是我们的目标:

我们想使用服务发现,因为我们可能会添加更多基于新类型的此类服务。我尝试的是拥有自己的 RestController,然后它将调用 ApplicationResource 的内部方法。那没有用。我找不到任何可以 implement/extend 更改逻辑的 interface/abstract class。

*请原谅我画的不好

尝试使用 Netflix Zuul。这也将注册到 Eureka 服务器,并根据注册到 Eureka 的其他服务自动设置动态路由,以通过一个单点提供对我们 API 的访问。

希望本文link对您有所帮助: https://stackabuse.com/spring-cloud-routing-with-zuul-and-gateway/