Asp.net 三层web应用程序的体系结构说明

Asp.net 三层web应用程序的体系结构说明,asp.net,architecture,Asp.net,Architecture,我们计划在表示层使用EXTJS框架,它将调用基于WCF的Rest服务或WebAPI服务(Http服务)。我的要求是有三层体系结构(物理分离),所以我的理解是我们需要将服务层放在另一台服务器上,并在IIS上托管服务,以便由托管在不同IIS服务器上的表示层使用。 对于这种架构,我几乎没有什么疑问 考虑到所有的呈现逻辑都是由EXTJS完成的,我们是否应该使用Webform方法来托管EXTS库(如本例中的ASP.NETMVC)就无关紧要了 如果我们在另一台服务器上托管服务,那么应该使用哪个服务身份验证。

我们计划在表示层使用EXTJS框架,它将调用基于WCF的Rest服务或WebAPI服务(Http服务)。我的要求是有三层体系结构(物理分离),所以我的理解是我们需要将服务层放在另一台服务器上,并在IIS上托管服务,以便由托管在不同IIS服务器上的表示层使用。 对于这种架构,我几乎没有什么疑问

  • 考虑到所有的呈现逻辑都是由EXTJS完成的,我们是否应该使用Webform方法来托管EXTS库(如本例中的ASP.NETMVC)就无关紧要了

  • 如果我们在另一台服务器上托管服务,那么应该使用哪个服务身份验证。在这种情况下,我认为我们不能使用表单身份验证,因为web和服务是分开托管的

  • 考虑到第三层是数据库服务器,是否真的需要在另一台服务器上托管服务层以使其成为三层。浏览器不是一个直接在浏览器上呈现EXTJS库的层吗


  • 由于没有人回答,我将根据我的研究和从另一个论坛得到的回复来回答我自己

  • 我们也可以使用MVC方法,控制器方法可以用于返回JSON结果,供ExtJSAPI使用。但这种方法的缺点是,我们不能在视图中使用强类型模型以及其他功能,如使用Html帮助程序和基于模型的自动验证。 使用这种方法,我们仍然可以使用MVC路由,也可以完全使用单个视图和ExtJs路由

  • 将Ext.js所需的服务放在web层上,Webforms/MVC应用程序也在web层上运行。如果需要,通过另一台服务器上的其他服务(第二层)分离业务逻辑/数据逻辑。不要直接从Ext.js调用这些。将演示文稿保留在第一层/Web层。我们可以使用表单身份验证调用Web层中的服务,并使用Windows身份验证将服务从Web层调用到第二层

  • 从服务器端的角度来看,浏览器并没有真正被视为一个层次。然而,在现代方法中,它是有争议的