从前端调用一些其他的静态服务

时间:2018-07-22 08:20:05

标签: domain-driven-design microservices dbcontext restful-architecture

想象一下,我有一个前端项目,它与其他一些提供宁静服务的项目进行通信。

在某些页面中,我需要从不同的静态服务中获取一些数据, 可以单独请求一些安心的服务吗? 还是调用一个静态服务,而该静态服务本身又在后端调用其他静态服务?

还是我必须调用一个静态服务,但是将其他实体添加到此DbContext中,我只需要在这里查询它?

1 个答案:

答案 0 :(得分:0)

这取决于您在做什么,但是我主要会说这样做是可以的。这是一种已建立的微服务模式,称为“复合UI”。详情请参见:https://docs.microsoft.com/en-us/dotnet/standard/microservices-architecture/architect-microservice-container-applications/microservice-based-composite-ui-shape-layout

如果您的微服务正在使用CQRS模式,(尽管仍然没有错),您可能会 失去构建特定于视图的“视图模型”的机会。但是,如果要编写\显示来自多个域的数据,我会说最好只是调用多个微服务来检索所需的数据。

如果您不小心的话,您可能会引入的唯一问题是在客户代码中引入投影逻辑(这还不错)或业务逻辑(非常糟糕)。对收到的数据进行任何处理以显示它。复合用户界面旨在用于将用户界面与各个部分明确分开。