2017-07-17 172 views
0

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

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

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

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

因为这个应用程序将是一个HTML5应用程序,我们可以绕过数据请求应用层并直接调用业务层从浏览器

  1. 一个缺点,我们可以看到的是,它会导致成CORS请求 对于一些要求预检也将进入画面。这可能会降低一点。

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

您能否就这些问题提出建议?

感谢

回答

0

层级取决于你的架构的目标是什么,如果它的性能低于层/物理分离将导致更好的性能。不过,您还可以使用其他技术来缓解性能,如缓存。

在这种典型的情况下。最好将这些图层分成单独的物理层,例如稍后的UI层,API层和数据。如果你仔细想想,API也是一种UI。您提交数据(json)不是提供页面。

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

我认为正确的答案总是取决于您的情况和体系结构目标,例如性能可伸缩性,可靠性和易用性。等等

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

相关问题