暴露jhipster微服务客户端类

时间:2016-12-01 12:06:55

标签: java jhipster microservices

我有两个用jhipster创建的微服务。 (ms1和ms2)

我使用AuthorizedFeignClient在两个微服务之间进行通信。

ms1有一些DTO类,它们用作REST API的输入和输出类。

来自ms2的

我需要调用一些ms1的API,因此我需要那些DTO类(POJO)来输入和输出数据。

ms2中显然没有这些DTO类。

所以我目前有两种选择:

1)将DTO类从ms1复制到ms2

2)将ms1导入为ms2中的maven依赖

方法1 - 看似简单,但会有重复的代码。

方法2 - ms1和ms2都打包为war文件而不是jar文件。仅仅为了使用某些类而包含整个war文件并不好看。

我应该采取哪种方法将这些DTO类从ms1转换为ms2?

1 个答案:

答案 0 :(得分:2)

如果你搜索微服务架构,你会发现很多人建议在微服务之间不分享任何内容,因为你希望能够尽可能独立地发展它们。这意味着您的方法1是首选,您可以添加第三种方法,即从swagger JSON规范生成REST客户端代码。 JHipster有一个模块:https://github.com/cbornet/generator-jhipster-swagger-cli

此外,服务之间的通信通常需要仔细考虑,这可能表明您的服务边界是错误的。