降低 Web 應用程式的績效,可能會和您新增執行 IIS 5.0 Web 伺服陣列的一個 Web 伺服器會使用網路負載平衡後,可能會增加網路頻寬

文章翻譯 文章翻譯
文章編號: 922733 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

徵狀

考慮下列案例。您可以將 Web 伺服器新增到使用網路負載平衡的 Web 伺服陣列。用戶端 Web 瀏覽器會傳送到 Web 伺服陣列中的網頁伺服器要求。這個 Web 伺服器正在執行 Microsoft 網際網路資訊服務 (IIS) 5.0。在這種情況降低 Web 應用程式的績效,可能會,並可能會增加網路頻寬。

如果 Web 伺服陣列中的 [Web] 伺服器設定背後負載平衡機制,就會發生這個問題。網路負載平衡 Microsoft 和協力廠商網路負載平衡器是負載平衡機制的範例。

這個問題可能會變糟如果要求到達 Web 之前由用戶端 Web 瀏覽器傳送的要求傳送透過 Proxy 伺服器執行 IIS 5.0 伺服器。

發生的原因

由用戶端 Web 瀏覽器傳送的 HTTP 要求資訊包含 ETag 值。在要求中的 [ETag 值不符合要求的資源執行 IIS 5.0 Web 伺服器上的 ETag 值,就會發生這個問題。如果第一次透過 Proxy 伺服器傳送要求,之所以發生這個問題,是因為在要求中的 [ETag 值不符合的 Proxy 伺服器的本機快取中要求的資源 ETag 值。

如果在要求中的 ETag 值不符合要求的資源 ETag 值,IIS 5.0 必須將要求的資源的全新版本傳送至用戶端 Web 瀏覽器。IIS 5.0 會傳送要求的資源,從本機快取的 Proxy 伺服器或用戶端 Web 瀏覽器的本機快取。如果要求的資源傳送從本機快取,結果會比如果從 Web 伺服器執行 IIS 5.0 的傳送要求的資源更快速地顯示給使用者。

這個效能問題可能會增加下列項目而定:
  • 使用 [Web 伺服陣列中的 Web 伺服器數目網路負載平衡
  • 要求的內容中有多少已存在於本機快取的用戶端 Web 瀏覽器

解決方案

如果要解決這個問題,同步處理執行 IIS 5.0 Web 伺服陣列中的所有 Web 伺服器上的 [ETag] 值。如果要執行這項操作,使用 Mdutil.exe 工具從其中一部 Web 伺服器擷取 ETag 值。接著,相同的 ETag 值設定在所有其他 Web 伺服器上。

根據預設值,Mdutil.exe 工具是搭配 Microsoft Windows 2000 安裝。Mdutil.exe 工具位於 Windows 2000 光碟 I386 資料夾中。檔案被命名為 Mdutil.ex_。您可以使用 Mdutil.exe 工具之前,必須展開 Mdutil.ex_ 檔案。要這麼做,請您執行下列步驟:
  1. 在 CD 光碟機包含 Windows 2000 光碟上, 瀏覽 [I386] 資料夾。
  2. 找出 Expand.exe 檔案以及 Mdutil.ex_ 檔案。
  3. 按一下 [開始],再按一下 [執行]、 輸入 cmd,] 然後再按一下 [確定]
  4. 在命令提示字元輸入下列命令,,然後按下 ENTER:
    Expand.exe R Mdutil.ex_ c:\ output
    這個命令會展開壓縮的 Mdutil.ex_ 檔案,並將 Mdutil.exe 檔案複製到 C:\ output 資料夾。

    附註在這個命令 output 會是 Mdutil.exe 檔案會複製的資料夾名稱的預留位置。
從某個 Web 伺服器擷取 ETag 值,並在所有其他 Web 伺服器上設定相同的 ETag 值,請依照下列步驟執行:
  1. 按一下 [開始],再按一下 [執行]、 輸入 cmd,] 然後再按一下 [確定]
  2. 在命令提示字元輸入下列命令,,然後按下 ENTER:
    cd output
  3. 在其中一部 Web 伺服器的一個命令] 提示輸入下列命令,,然後按下 ENTER:
    取得 w3svc-螺旋槳 2039 Mdutil.exe
    此指令會擷取 ETag 值從 Web 伺服器。
  4. 在所有其他網頁伺服器上一個命令提示字元,輸入下列命令,並再按下 ENTER:
    Mdutil.exe set w3svc-螺旋槳 2039年 –value entitytagvalue"
    附註在這個命令 entitytagvalue 會為您在步驟 3 中擷取 ETag 值的預留位置。

    此指令會將相同的 ETag 值設定在所有其他 Web 伺服器上。
  5. 所有 Web 伺服器上執行 IIS 5.0 Web 伺服陣列中的重新啟動 IIS 5.0。
附註Mdutil.exe 工具是不受支援的工具,而且是未記載。如果您需要協助使用 Mdutil.exe] 工具,在命令提示字元中輸入 mdutil.exe

狀況說明

Microsoft 已確認<適用於>一節所列之 Microsoft 產品確實有此問題。

其他相關資訊

實體標記 (ETag 值) 用來比較兩個或多個實體從相同要求的資源。一個 ETag 值有兩個組件]、 [檔案時間戳記] 和 [變更號碼。一個 ETag 值,會出現下列格式:
filetimestampchangenumber
當 Microsoft Internet Explorer 會傳送 HTTP GET 要求到 Web 伺服器 HTTP GET 要求包括有一個 ETag 是 If-無-符合標頭可能如下所示的值。
HTTP: If-None-Match ="0222d5bffcbc41:301a"
IIS 5.0 會傳送可能會有稍微不同的 ETag 值將 HTTP 200 OK 回應。這個 ETag 值可能如下所示。
HTTP: ETag ="0222d5bffcbc41:3246"
檔案時間戳記是相同的要求和回應。因此,執行 IIS 5.0 的 Web 伺服器會要求評估為要求的資源目前的值。不過,變更號碼是不同的。因此,執行 IIS 5.0 Web 伺服器會傳送其目前版本的檔案,而不是要傳送它自己的檔案的快取的複本 instructing Internet Explorer。這個問題的發生原因,是因為 IIS 5.0 會傳送 HTTP 200 OK 回應並不是 304 未修改的回應。

Proxy 伺服器也可能行為相同的方式。Proxy 伺服器會辨識變更號碼是不同。此外,Proxy 伺服器會要求評估為 Proxy 伺服器尚未安裝在本機快取中的資源。

?考

如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
922703當您使用 Internet Explorer 6 嘗試存取裝載於網際網路資訊服務 6.0 的 Web 應用程式時,可能會遇到 Web 效能不佳

屬性

文章編號: 922733 - 上次校閱: 2006年11月21日 - 版次: 1.1
這篇文章中的資訊適用於:
  • Microsoft Internet Information Services 5.0
關鍵字:?
kbmt kbexpertiseinter kbprb kbtshoot KB922733 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:922733
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。
依現狀不再更新的知識庫內容免責聲明
本文旨在說明 Microsoft 不再提供支援的產品。因此,本文係依「現狀」提供,不會再更新。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com