Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

深入剖析 IIS 6.0 應用程式集區與 Web 園架構

編輯:關於伺服器

四、應用程式集區深度解析

在了解 IIS 6.0 核心架構組件後,我們將重點探討應用程式集區的進階設定。應用程式集區的屬性對話框包含四個索引標籤:回收、效能、健康狀態與身分識別。其中「回收」頁面最為關鍵,它允許管理員設定工作進程的定期回收機制。在工作進程隔離模式下,IIS 可配置定期重新啟動集區中的工作進程,有效管理異常進程,確保應用程式穩定運行並回收流失的系統資源。

回收過程中,失敗的工作進程將停止接收新要求,並處理完要求佇列中剩餘的請求。替代工作進程會在舊進程停止前啟動,避免服務中斷。舊進程完成未決要求後正常關閉,若超過設定的時間限制、要求數、排程時間或記憶體閾值仍未關閉,則會被強制終止。預設情況下,應用程式集區每 1,740 分鐘(29 小時)回收一次。

健康狀態監控與快速失敗保護

W3SVC 依據「健康狀態」頁面的設定判斷集區運行狀況,包括:定期 Ping 工作進程(預設 30 秒)、啟動與關閉時間限制、以及快速失敗保護(若指定時間內多個工作進程失敗則禁用集區)。此外,ISAPI 應用程式(含 ASP.NET 與 asp.dll)可主動宣告不再適合服務並要求回收。

重疊回收與孤兒進程處理

預設啟用「重疊回收」技術:失敗進程保持運行,同時建立新進程接管新請求,舊進程處理完佇列要求或逾時後關閉。此期間 HTTP.sys 維持 TCP/IP 連線不中斷。但需注意:舊進程逾時後,原進程中的 Session 資訊將遺失。所有回收操作自動完成,無需管理員介入,通常不造成明顯服務中斷。若需記錄回收事件,可將 LogEventOnRecycle 設為 1。

對於無法多實例運行的應用程式,重疊回收可能導致問題。此時可將 DisallowOverlappingRotation 設為 True 關閉重疊。若需保留失敗進程進行偵錯,可設定 OrphanActionExe 指定執行檔,使進程成為「孤兒」時仍保持運行。

Web 園架構與 CPU 親和性

IIS 6.0 支援將應用程式集區配置為 Web 園。概念上類比 IIS 5.0 時代在多個網站間輪循分發請求,但 IIS 6.0 無需建立額外網站,只需在「效能」頁設定「最大工作進程數」。負載輕時 IIS 會自動縮減進程數(預設 20 分鐘無負載後),負載重時自動增加,全程自動化。

此外,SMPAffinitized 與 SMPProcessorAffinityMask 兩個屬性允許將特定工作進程綁定至特定 CPU,優化多處理器系統上的效能表現。

Web 園設定畫面

本文從架構角度全面介紹 IIS 6.0 新特性,第二部分將涵蓋更多實用功能與預設配置變更,敬請期待。

Copyright © Windows教程網 All Rights Reserved