NET培训:Web Farm和Web Garden的区别.doc_第1页
NET培训:Web Farm和Web Garden的区别.doc_第2页
NET培训:Web Farm和Web Garden的区别.doc_第3页
NET培训:Web Farm和Web Garden的区别.doc_第4页
NET培训:Web Farm和Web Garden的区别.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.NET培训:Web Farm和Web Garden的区别华迪教育/华迪信息/ ASP.NET开发服务器负责处理所有来自客户端的请求和响应(开发阶段)。完成开发后,为了让他人可以访问你的站点,你必须将站点部署到服务器上,这将涉及到Web服务器。Web服务器负责处理所有来自客户端的请求,并给予响应。下图展示了ASP.NET Web应用程序典型的单IIS部署架构。客户端请求资源,IIS处理请求并响应。Web Farm上述架构适用于只有一个Web服务器,且多个客户端从同一服务器请求资源的场景。如果站点的流量剧增,单个独立的服务器不足以处理客户端的请求。为了分担流量,您可能需要将应用程序部署到多台服务器。这就是所谓的“Web Fram”。因此,当您将站点部署到通过负载均衡器(Load Balancer)关联的多台Web服务器,就构成了“Web Farm”。下图展示了Web Farm的整体布局。在通常的Web Farm架构中,单个应用程序被部署到多个IIS服务器(由上图可知,应是“Web服务器”),服务器通过负载均衡器以VIP(Virtual IP)的形式进行连接。负载均衡器再连接到外网。因此,来自客户端的请求,首先经过负载均衡器。负载均衡器根据当前每个服务器的流量将请求路由到相应的Web服务器。这些Web服务器可能共享相同的数据库服务器(DB Server),也可能在后端使用重复服务器(Replicated Server)。总之一句话,当我们在多个Web服务器上部署同一Web应用程序来均衡负载就叫做“Web Farm”。Web Garden在开始讲解Web Garden之前,我希望您对应用程序池(Application Pool)和工作进程(Worker Process)的基本原理有所了解。在IIS中,工作进程(Worker Process)负责运行ASP.NET应用程序,所有ASP.NET功能都运作在工作进程的范围之内(作者的这种描述有点别扭)。工作进程负责处理所有的请求、响应、会话数据、存储数据。应用程序池(Application Pool)是工作进程的容器。应用程序池用于隔离IIS工作进程,为Web应用程序提供高安全性、高可靠性和高可用性。默认情况下,每个应用程序池包含一个工作进程。包含多个工作进程的应用程序池(原文为Application,疑为作者笔误)即被称为“Web Garden”。下图是一个典型的Web Garden应用程序。在上图中,您可以看到其中一个应用程序池中包含多个工作线程,这就构成了Web Garden。因此,Web Farm是指将同一Web应用程序部署到多台服务器,并基于服务器的负载进行访问;而Web Garden是指单个应用程序池包含多个工作线程。在IIS 6和IIS 7中创建Web Garden现在,我将向您展示如何在IIS 6和IIS 7中更改Web Garden的工作线程数。在IIS 6中,右键单击“应用程序池” “属性” 转到“性能”选项卡。在“性能”选项卡部分,有一个“Web Garden”的选项,默认值为“1”,您可以将该值设置为您需要的数值。在IIS 7中,右键单击“应用程序池” 转到“高级设置” 找到“进程模型”,下面有个“最大工作进程”项。您可以修改默认值(默认为1)来创建Web Garden。在上图中,您还可以看到Web Garden的定义。您还可以参考我早前关于当前主题的文章。Web Farm和Web Garden的优点现在,让我们一起来看Web Farm和Web Garden的优点。Web Farm的优点1. 它提供了高可用性(或者高容错性)。如果Farm中的任一服务器宕掉,负载均衡器可以将请求重定向到其他服务器。2. 提高了对客户端请求的响应速度。3. 提高了Web应用程序的稳定性,减少了应用程序的故障率。4. 可将会话和其他资源集中存储,以便让所有的服务器都能访问。Web Garden的优点1. 通过工作进程间的请求共享,提高了应用程序的可用性(或者性能)。2. Web Garden通过处理器亲和性(Processor Affinity)对应用程序进行分配(基于参数和标记)。3. 减少物理空间消耗。Web Farm模式下会话管理默认情况下,会话模式被设置为InProc。该模式下会话数据存储在工作进行中。但是,在Web Farm模式中,所有服务器可以共享同一个会话,我们可将会话模式设置为State Server或者SQL Server模式。这样, 即使某些服务器宕掉,请求通过负载均衡器转移到其他服务器,会话数据也可共享。在上图中,您可看到两个IIS服务器共享同一份存储在工作进程外的会话数据。Web Garden模式下会话管理当我们使用Web Garden时,客户端请求由不同的工作进程进行处理,所以会话模式必须是上面所说的外部进程会话模式。对于Web Garden,我们必须将会话放到同一服务器的不同工作进程中。总结Web Farm是指将同一Web应用程序部署到多台服

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论