【问题标题】:Do we need Application Tier for Single Page Application我们是否需要单页应用程序的应用程序层
【发布时间】:2017-07-17 08:26:10
【问题描述】:

我们正在设计一个新的 SPA 应用程序。最初,我们计划拥有三层应用程序-

应用层(它将为网页提供服务,并充当所有其他数据请求的代理)。

业务层(这将托管所有业务功能的 WebAPI)。

数据库层(用于存储数据)。

既然这个应用程序是HTML5应用程序,我们可以绕过Application Tier进行数据请求,直接从浏览器调用Business Tier吗?

  1. 我们可以看到的一个缺点是它会导致 CORS 请求 对于某些请求,预检也将出现。这可能会慢一点。

  2. 如果数据是由外部服务命中的数据组合而成的,这个逻辑必须传递给浏览器。

您能在这些方面提出一些建议吗?

谢谢

【问题讨论】:

    标签: asp.net n-tier-architecture


    【解决方案1】:

    层取决于您的架构目标是什么,如果它的性能比更少的层/物理分离会带来更好的性能。但是,您可以使用其他技术来降低性能,例如缓存。

    在这样的典型场景中。最好将这些层分离为单独的物理层,例如 UI 层、API 层和稍后的数据。如果你仔细考虑的话,API 也是一种 UI。而不是交付页面,您正在交付数据(json)。

    请记住,您的业务逻辑应该是可测试的,而不涉及任何其他层。

    我认为正确的答案始终取决于您的情况和架构目标,例如性能可扩展性、可靠性、易于更改。等等等等。

    但您可以将此作为一般指导。

    【讨论】:

      猜你喜欢
      • 2012-03-19
      • 1970-01-01
      • 2013-05-14
      • 2012-09-08
      • 1970-01-01
      • 2020-01-29
      • 1970-01-01
      • 2023-01-08
      • 2011-01-28
      相关资源
      最近更新 更多