伪装客户端包装

Feign client packaging

我对 Feign 很陌生。今天才发现... 当我读到 Spring Cloud Feign 时,我的第一个问题是:“你如何打包你的 feign 客户端?

我举个例子。 假设我们有 2 个微服务 M1 和 M2。 M2 使用来自 M1 的端点。

例如,我们可以 为 M1 构建 2 个 jar :

  1. 第一个是微服务本身。
  2. 第二个可以是M1的Feign客户端,暴露服务

在此解决方案中,我看到了与 EJB2 存根和骨架部分 的类比。我看到了另一个可能的优势:Feign 客户端始终与实现 (v1) 同步 (v1)。

或者您只在 M2 微服务中声明 Feign 客户端。也就是说,如果第三个微服务需要 M1,它也会声明一个 Feign 客户端(可能会有所不同,因为它的需求不同)。

也许我完全错了,请指正。

非常感谢! 再见

Feign背后的主要思想只是为你的微服务获取一个rest client,当然,它应该与暴露的服务同步

记住这些信息:

你只在 M2 微服务中声明 Feign 客户端吗? - 是的,您的 M2 应该声明对它的依赖以使用 M1

公开的服务

也就是说,如果第三个微服务需要M1,它也会声明一个Feign客户端(因为它的需求不同,所以可能会有点不同)。 - 我不这么认为,客户端应该一直都是一样的,只有当你的 API 休息发生变化时它才会不同,否则,所有假客户端应该是相同的