中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

【譯文】Web Farm和Web Garden的區(qū)別?

  在這篇博文中,我將確切剖析Web Farm和Web Garden的區(qū)別和原理,以及使用它們的利弊。進(jìn)一步地,我將介紹如何在各個(gè)版本的IIS中創(chuàng)建Web Garden。

  英文原文 | Abhijit Jana | 2010年10月2日

 

概述

  ASP.NET開發(fā)服務(wù)器負(fù)責(zé)處理所有來自客戶端的請(qǐng)求和響應(yīng)(開發(fā)階段)。完成開發(fā)后,為了讓他人可以訪問你的站點(diǎn),你必須將站點(diǎn)部署到服務(wù)器上,這將涉及到Web服務(wù)器。Web服務(wù)器負(fù)責(zé)處理所有來自客戶端的請(qǐng)求,并給予響應(yīng)。下圖展示了ASP.NET Web應(yīng)用程序典型的單IIS部署架構(gòu)。

  客戶端請(qǐng)求資源,IIS處理請(qǐng)求并響應(yīng)。

Web Farm

  上述架構(gòu)適用于只有一個(gè)Web服務(wù)器,且多個(gè)客戶端從同一服務(wù)器請(qǐng)求資源的場(chǎng)景。如果站點(diǎn)的流量劇增,單個(gè)獨(dú)立的服務(wù)器不足以處理客戶端的請(qǐng)求。為了分擔(dān)流量,您可能需要將應(yīng)用程序部署到多臺(tái)服務(wù)器。這就是所謂的“Web Fram”。因此,當(dāng)您將站點(diǎn)部署到通過負(fù)載均衡器(Load Balancer)關(guān)聯(lián)的多臺(tái)Web服務(wù)器,就構(gòu)成了“Web Farm”。下圖展示了Web Farm的整體布局。

  在通常的Web Farm架構(gòu)中,單個(gè)應(yīng)用程序被部署到多個(gè)IIS服務(wù)器(由上圖可知,應(yīng)是“Web服務(wù)器”),服務(wù)器通過負(fù)載均衡器以VIP(Virtual IP)的形式進(jìn)行連接。負(fù)載均衡器再連接到外網(wǎng)。因此,來自客戶端的請(qǐng)求,首先經(jīng)過負(fù)載均衡器。負(fù)載均衡器根據(jù)當(dāng)前每個(gè)服務(wù)器的流量將請(qǐng)求路由到相應(yīng)的Web服務(wù)器。這些Web服務(wù)器可能共享相同的數(shù)據(jù)庫服務(wù)器(DB Server),也可能在后端使用重復(fù)服務(wù)器(Replicated Server)。

  總之一句話,當(dāng)我們?cè)诙鄠€(gè)Web服務(wù)器上部署同一Web應(yīng)用程序來均衡負(fù)載就叫做“Web Farm”。

Web Garden

  在開始講解Web Garden之前,我希望您對(duì)應(yīng)用程序池(Application Pool)和工作進(jìn)程(Worker Process)的基本原理有所了解。如果您已經(jīng)讀過《How IIS Processes ASP.NET Request?》,我有理由相信您對(duì)上述概念不會(huì)陌生。

  在IIS中,工作進(jìn)程(Worker Process)負(fù)責(zé)運(yùn)行ASP.NET應(yīng)用程序,所有ASP.NET功能都運(yùn)作在工作進(jìn)程的范圍之內(nèi)(作者的這種描述有點(diǎn)別扭)。工作進(jìn)程負(fù)責(zé)處理所有的請(qǐng)求、響應(yīng)、會(huì)話數(shù)據(jù)、存儲(chǔ)數(shù)據(jù)。應(yīng)用程序池(Application Pool)是工作進(jìn)程的容器。應(yīng)用程序池用于隔離IIS工作進(jìn)程,為Web應(yīng)用程序提供高安全性、高可靠性和高可用性。

  默認(rèn)情況下,每個(gè)應(yīng)用程序池包含一個(gè)工作進(jìn)程。包含多個(gè)工作進(jìn)程的應(yīng)用程序池(原文為Application,疑為作者筆誤)即被稱為“Web Garden”。下圖是一個(gè)典型的Web Garden應(yīng)用程序。

  在上圖中,您可以看到其中一個(gè)應(yīng)用程序池中包含多個(gè)工作線程,這就構(gòu)成了Web Garden。

  因此,Web Farm是指將同一Web應(yīng)用程序部署到多臺(tái)服務(wù)器,并基于服務(wù)器的負(fù)載進(jìn)行訪問;而Web Garden是指單個(gè)應(yīng)用程序池包含多個(gè)工作線程。

在IIS 6和IIS 7中創(chuàng)建Web Garden

  現(xiàn)在,我將向您展示如何在IIS 6和IIS 7中更改Web Garden的工作線程數(shù)。在IIS 6中,右鍵單擊“應(yīng)用程序池” > “屬性” > 轉(zhuǎn)到“性能”選項(xiàng)卡。

  在“性能”選項(xiàng)卡部分,有一個(gè)“Web Garden”的選項(xiàng),默認(rèn)值為“1”,您可以將該值設(shè)置為您需要的數(shù)值。

  在IIS 7中,右鍵單擊“應(yīng)用程序池” > 轉(zhuǎn)到“高級(jí)設(shè)置” > 找到“進(jìn)程模型”,下面有個(gè)“最大工作進(jìn)程”項(xiàng)。您可以修改默認(rèn)值(默認(rèn)為1)來創(chuàng)建Web Garden。

  在上圖中,您還可以看到Web Garden的定義。

  您還可以參考我早前關(guān)于當(dāng)前主題的文章。>>

Web Farm和Web Garden的優(yōu)點(diǎn)

  現(xiàn)在,讓我們一起來看Web Farm和Web Garden的優(yōu)點(diǎn)。

Web Farm的優(yōu)點(diǎn)
  1. 它提供了高可用性(或者高容錯(cuò)性)。如果Farm中的任一服務(wù)器宕掉,負(fù)載均衡器可以將請(qǐng)求重定向到其他服務(wù)器。
  2. 提高了對(duì)客戶端請(qǐng)求的響應(yīng)速度。
  3. 提高了Web應(yīng)用程序的穩(wěn)定性,減少了應(yīng)用程序的故障率。
  4. 可將會(huì)話和其他資源集中存儲(chǔ),以便讓所有的服務(wù)器都能訪問。
Web Garden的優(yōu)點(diǎn)
  1. 通過工作進(jìn)程間的請(qǐng)求共享,提高了應(yīng)用程序的可用性(或者性能)。
  2. Web Garden通過處理器親和性(Processor Affinity)對(duì)應(yīng)用程序進(jìn)行分配(基于參數(shù)和標(biāo)記)。
  3. 減少物理空間消耗。

Web Farm模式下會(huì)話管理

  默認(rèn)情況下,會(huì)話模式被設(shè)置為InProc。該模式下會(huì)話數(shù)據(jù)存儲(chǔ)在工作進(jìn)行中。但是,在Web Farm模式中,所有服務(wù)器可以共享同一個(gè)會(huì)話,我們可將會(huì)話模式設(shè)置為State Server或者SQL Server模式。這樣, 即使某些服務(wù)器宕掉,請(qǐng)求通過負(fù)載均衡器轉(zhuǎn)移到其他服務(wù)器,會(huì)話數(shù)據(jù)也可共享。

  在上圖中,您可看到兩個(gè)IIS服務(wù)器共享同一份存儲(chǔ)在工作進(jìn)程外的會(huì)話數(shù)據(jù)。您可以參考我早先的一篇文章《Exploring Session in ASP.NET》,文章中我揭示了如何在外部進(jìn)程模式中配置會(huì)話模式。

Web Garden模式下會(huì)話管理

  當(dāng)我們使用Web Garden時(shí),客戶端請(qǐng)求由不同的工作進(jìn)程進(jìn)行處理,所以會(huì)話模式必須是上面所說的外部進(jìn)程會(huì)話模式。對(duì)于Web Garden,我們必須將會(huì)話放到同一服務(wù)器的不同工作進(jìn)程中。

  譯者注:應(yīng)用程序涉及Web Garden可能需要配置<processModel>配置節(jié),該配置節(jié)由ASPNET_isapi.dll讀取,托管代碼不讀取,這里不做詳細(xì)介紹。

總結(jié)

  Web Farm是指將同一Web應(yīng)用程序部署到多臺(tái)服務(wù)器,并基于服務(wù)器的負(fù)載進(jìn)行訪問;而Web Garden是指單個(gè)應(yīng)用程序池包含多個(gè)工作線程。

  在這篇博文中,我闡述了Web Farm和Web Garden的基礎(chǔ)知識(shí)。本文囊括了Web Farm和Web Garden的基本信息和概念,至于Web Farm和Web Garden的配置細(xì)節(jié)我將在其他文章中進(jìn)行闡述。更多信息請(qǐng)參考以下文章:

  1. Boosting performance using an IIS web garden
  2. How-To Configure Session State in a Windows Web Farm
  3. Role of Web gardens and web farms in ASP.NET

  希望此文對(duì)您有所幫助。

NET技術(shù)【譯文】Web Farm和Web Garden的區(qū)別?,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久久婷 | 免费av在线网站 | 亚洲精品18 | 美女视频一区 | 亚洲精品中文字幕 | 国产一区免费视频 | 日韩欧美视频免费在线观看 | 欧洲性生活视频 | 看黄在线 | 日韩在线视频一区二区三区 | 色成人免费网站 | 亚洲第一成人av | av不卡一区 | 国产亚洲一区二区三区在线 | av激情在线| 国产精品久久久久久久免费大片 | 91亚洲精品久久久电影 | 久久久精品一区二区三区 | 亚洲精品一区二区三区丝袜 | 亚洲激情一区二区三区 | 97伦理| 国产精品美女久久久久久不卡 | 在线视频91 | 欧美激情一区二区三级高清视频 | 欧美日韩一区二区电影 | 毛片在线免费播放 | 啪啪毛片 | 中文字幕在线一区二区三区 | 亚洲不卡av在线 | 夜夜草视频 | 狠狠色香婷婷久久亚洲精品 | 久久精品亚洲成在人线av网址 | 欧美久久久网站 | 亚洲国产一区在线 | 在线看中文字幕 | www.夜夜草 | 97精品国产97久久久久久免费 | 天天操妹子 | 久久国产高清 | 操射视频| 国产精品中文字幕在线观看 |