当前位置: 首页 > 知识库问答 >
问题:

公开jhipster微服务客户端类

柳正志
2023-03-14

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

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

从ms2我需要调用ms1的一些API,因此我需要那些DTO类来输入和输出数据

MS2中显然没有这些DTO类。

所以我现在有两个选择:

1)将DTO类从ms1复制到ms2

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

方法2-ms1和ms2都被打包为war文件,而不是jar文件。仅仅为了使用一些类而包含整个war文件看起来不太好。

要将这些DTO类从ms1转换到ms2,我应该采取的其他方法是什么?

共有1个答案

南宫森
2023-03-14

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

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

 类似资料:
  • Lazy 微服务客户端 Sometimes you have to load initial data before you can create your @Client(). In this case, you can use ClientProxyFactory, which provides create() method. 有时候在创建@Client()之前你需要加载原始数据。这时,你可

  • 我有一个包含10个微服务的微服务架构,每个微服务提供一个客户端。在由微服务团队管理/控制的客户机内部,我们只接收参数并将它们传递给一个通用http调用程序,该调用程序接收endpoint和N个params,然后进行调用。所有微服务都使用http和web api(我猜技术并不重要)。 对于我来说,作为微服务团队提供一个客户是没有意义的,应该是消费者的责任,如果他们想创建一些抽象或者直接调用它是他们的

  • 我有一个jhipster微顶和网关应用程序设置。它是我正在尝试构建的搜索应用程序。为此,我不需要对每个请求的用户进行身份验证。 因此,为此,我尝试将以下行添加到gate wayApp的securityConfiguration。 但是我得到一条例外消息: 我尝试使用,其中fruitservicev1是我的服务应用程序的名称。 我还尝试在服务应用程序的MicroserviceSecurityConf

  • 我想在一些计算机之间建立点对点连接,这样用户就可以在没有外部服务器的情况下聊天和交换文件。我最初的想法如下: 我在服务器上制作了一个中央服务器插座,所有应用程序都可以连接到该插座。此ServerSocket跟踪已连接的套接字(客户端),并将新连接的客户端的IP和端口提供给所有其他客户端。每个客户端都会创建一个新的ServerSocket,所有客户端都可以连接到它。 换句话说:每个客户端都有一个Se

  • pom.xml 主应用程序类 Application.Properties eureka客户端设置 pom.xml Application.Properties 我在eureka-server仪表板(http://localhost:8761)中没有看到向Eureka server注册的micro-service-currency-exchange-service 为什么eureka客户端没有注册

  • 我到处都读到微服务中的服务对服务调用应该是异步的。当请求必须通过2个或多个异步服务时,我们如何进行客户端确认? 这是我的实时场景。我们正在我们的组织中开发电子邮件发送功能。我们计划按以下顺序为此提供4个API服务。 公共API-将电子邮件功能公开给公共 验证API-验证电子邮件和其他字段的真实性 模板获取API-从数据库/CMS中获取电子邮件模板并准备要发送的最终内容 电子邮件发送API-将接收收