网关 API 与前端服务

Gateway API vs Frontend Service

我正在努力寻找对我正在从事的项目更好的方法。 我正在开发一个基于微服务的 SaaS,我有几个服务用于某些功能,每个服务都有自己的 REST API。 我现在的困境是:

  1. 将我的前端 UI 包含在网关服务中,该服务将提供 UI 和将请求代理到其他服务的业务逻辑。
  2. 有一项服务只允许用户访问 UI,而所有内容将通过 AJAX 直接使用不同的服务检索。

想法?

谢谢

这里有一些注意事项:

  1. 安全。如果您的微服务是面向数据的(它们应该是),它们是否了解最终用户帐户并实施必要的检查?如果您要直接通过 AJAX 调用它们,则必须对其进行保护。

  2. 性能。为了获得良好的性能,必须并行调用微服务。您的客户端架构支持吗?

  3. 服务定位器。您使用什么来定位服务实例、进行健康检查和故障转移?通常所有这些都太复杂而不能直接从 javascript.

  4. 中使用
  5. API。考虑维护多个小型全能 API 与单个应用程序特定 API.

  6. 的向后兼容性的成本
  7. 我并不是说您应该去创建 Gateway。因为不创建网关是更少的代码和更少的 APIs。你应该衡量一切并自己决定。