我们是否需要单页应用程序的应用程序层

时间:2017-07-17 08:26:10

标签: asp.net n-tier-architecture

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

应用程序层(将提供网页,并将作为所有其他数据请求的代理)。

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

数据库层(存储数据)。

由于此应用程序将是HTML5应用程序,我们是否可以绕过应用程序层进行数据请求,并直接从浏览器调用业务层

  1. 我们可以看到的一个缺点是它会导致CORS请求 对于一些要求预检也将出现在图片中。这可能会减慢它的速度。

  2. 如果数据是通过组合来自外部服务命中的数据形成的,则此逻辑必须传递给浏览器。

  3. 你能否就这些问题提出建议?

    由于

1 个答案:

答案 0 :(得分:0)

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

在这样的典型场景中。最好将层分成单独的物理层,例如UI层,API层和数据。如果你认真考虑,API也是一种用户界面。而不是提供页面,你正在提供数据(json)。

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

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

但你可以把它作为一般指导。