如何在两个微服务之间的REST服务之间共享实体?

RA2*_*A26 9 java rest microservices

我用java创建了两个微服务.我需要从服务A到服务B进行REST api调用.发送的数据将采用JSON格式.使用jax-rs我需要在服务中创建实体类.

由于两个项目中的实体类都相同.我

  • 创建一个公共jar并使用is for我的所有实体/域对象?这是否使我的微服务更加紧密耦合?
  • 我是否在微服务项目中创建了相同的类?这只意味着重复两个项目的工作?

是否有更好的方式在服务之间进行通信?

Tec*_*ker 0

这是我们作为开发人员感到困惑的常见情况。我建议有一个可以在两个微服务(A 和 B)中使用的通用 jar(共享)。它只不过是在我们使用第三方库时共享第三方资源。在我当前的项目中,我们处于同样的情况,我们找到了拥有单独的共享库(api-shared作为名称)并将其作为 jar 在不同的微服务中使用的最佳方法。

在第二种方法中,您最终得到了冗余代码并且也难以维护。假设如果实体有任何更改,那么您必须更改两个实体,这不是同步事物的好方法。

总而言之,我建议您对这两个微服务使用共享 jar。

问候

技术