要點 只有在背景工作處理序隔離模式下運行時才能使用這個 IIS 6.0 功能。
應用程式集區是將一個或多個應用程式連結到一個或多個背景工作處理序集合的配置。因為應用程式集區中的應用程式與其他應用程式被背景工作處理序邊界分隔,所以某個應用程式集區中的應用程式不會受到其他應用程式集區中應用程式所產生的問題的影響。
通過建立新的應用程式集區以及為其指派網站和應用程式,可以使您的伺服器更加有效、可靠,同時也可以使您的其他應用程式一直保持可用狀態,即使當為新應用程式集區提供服務的背景工作處理序出現問題時。
建立應用程式集區的原則
在配置應用程式集區時請考慮以下原則:
- 要隔離運行在同一台電腦上但屬於不同網站的 Web 應用程式,請為每個網站建立單獨的應用程式集區。
- 為了增強安全性,請為每個應用程式集區配置唯一的使用者帳戶(進程標識)。請使用具有盡量少的使用者權利的帳戶,例如 IIS_WPG 組中的網路服務帳戶。
- 如果在同一台伺服器上同時存在一個應用程式的測試版和正式發行版,請將這兩個版本的應用程式分隔到兩個不同的應用程式集區中。這樣做可以隔離該應用程式的測試版本。
- 作為設計上的考慮,如果您想配置一個應用程式以其特有的一組屬性來運行,請為這個應用程式單獨建立一個應用程式集區。
要點 您必須是本機電腦上 Administrators 組的成員或者您必須被授予了相應的許可權才能執行下列步驟。作為安全性的最佳操作,請使用不屬於 Administrators 組的帳戶登入電腦,然後使用運行方式命令以管理員身份運行 IIS 管理器。在命令提示字元下,鍵入 runas /user:administrative_accountname "mmc %systemroot%\system32\inetsrv\iis.msc"。
建立新應用程式集區
- 在 IIS 管理器中,展開本機電腦,按右鍵“應用程式集區”,指向“建立”,然後單擊“應用程式集區”。
- 在“應用程式集區名稱”框中,輸入新的應用程式集區名稱。
- 如果在“應用程式集區 ID”框中出現的 ID 不是您想要的,那麼請輸入一個新的 ID。
- 在“應用程式集區設定”中,單擊適當的設定。如果您單擊了“將現有應用程式集區作為模板”,請在“應用程式集區名稱”框中按右鍵想要用來作為模板的應用程式集區。
- 單擊“確定”。
將應用程式指派到應用程式集區
- 在 IIS 管理器中,按右鍵您要為其指派應用程式集區的應用程式,然後單擊“屬性”。
- 單擊“虛擬目錄”、“目錄”或“主目錄”選項卡。
- 如果您正在指派一個目錄或虛擬目錄,請驗證“應用程式名稱”是否已被填寫。如果“應用程式名稱”框尚未被填寫,請單擊“建立”,然後輸入名稱。
- 在“應用程式集區”列表框中,單擊您想要為其指派網站的應用程式集區的名稱。
- 單擊“確定”。
預設情況下,在安裝IIS時會建立一個預設網站並建立一個名為DefaultAppPool的應用程式集區為其使用;預設配置下的應用程式集區已經可以很好的進行工作,建議你只有在特別需要時才對應用程式集區進行配置。
配置應用程式集區屬性
在IIS管理主控台中展開應用程式集區檔案夾,然後右擊對應的應用程式集區,點擊屬性,你可以在應用程式集區的屬性中進行以下配置:
回收
在回收標籤,你可以設定背景工作處理序的回收方式:
回收背景工作處理序(分鐘):在背景工作處理序運行多少分鐘後回收背景工作處理序,預設啟用,並且設定為1740分鐘(29小時);
回收背景工作處理序(請求數目):在背景工作處理序處理多少 個HTTP請求後終止此背景工作處理序,預設禁用,如果啟用則預設值為35000;
在下列時間回收背景工作處理序:在指定的時間回收背景工作處理序,預設禁用;如需啟用,勾選後點擊添加按鈕添加回收的時間即可,使用24小時制定義回收的時間;
消耗太多記憶體時回收背景工作處理序:
另外需要注意的是,應用程式集區具有以下兩種背景工作處理序回收方式,不過這兩種回收方式均不會造成Web服務的中斷:
如果Web應用程式不支援多執行個體運行,那麼你必須配置應用程式集區禁止使用重疊回收方式。此配置無法在IIS管理主控台中進行修改,只能通過在metabase.xml中修改對應應用程式集區的DisallowOverlappingRotation metabase屬性為true進行。
效能
在效能標籤你可以設定背景工作處理序的運行方式:
在空閑此段時間後關閉背景工作處理序(分鐘):當背景工作處理序空閑多少分鐘後關閉此背景工作處理序,這降低了空閑背景工作處理序對系統資源和CPU效能的消耗,預設啟用並且設定為20分鐘;
核心請求隊列限制為(請求次數):當HTTP.sys接收到某個用戶端發送的HTTP請求時,如果處理此請求的對應應用程式集區的背景工作處理序還處於忙狀態,則HTTP.sys將接收到的請求儲存在對應應用程式集區的請求隊列中,直到背景工作處理序空閑為止。此選項即用於設定此應用程式集區的請求隊列所能容納的請求數量,預設情況下每個應用程式集區的請求隊列限制為保留1000個請求,如果超出則向用戶端返回503錯誤,你可以根據需要適當進行修改,最大可以設定為65535。但是如果設定太大則會消耗大量的系統資源 ,而設定太小會導致用戶端訪問時頻繁出現503錯誤。
啟用CPU監視:監視此應用程式集區的CPU使用率,預設未啟用;如果某個應用程式集區佔用的CPU利用率過多,那麼可以通過配置此選項來限制此應用程式集區;
最大CPU使用率(百分比):所設定的應用程式集區所能使用的最大CPU使用率;啟用CPU監視時預設值為100;
重新整理CPU使用率(分鐘):重新整理CPU使用率的間隔時間;啟用CPU監視時預設值為5;
CPU使用率超過最大使用率時執行的操作:當此應用程式集區的CPU使用率超過所設定的最大CPU使用率時所進行的操作,啟用CPU監視時預設為無,此時IIS只是在事件記錄中進行記錄而不進行其他動作;如果選擇為關閉,那麼IIS將關閉此應用程式集區中的所有背景工作處理序;
Web園:在Web園中你可以配置此應用程式集區所使用的最大背景工作處理序數,預設為1,最大可以設定為4000000; 配置使用多個背景工作處理序可以提高該應用程式集區處理請求的效能,但是在設定為使用多個背景工作處理序之前,請考慮以下兩點:
健全狀態
在健全狀態標籤你可以配置應用程式集區監視背景工作處理序的健全狀態,
啟用Ping:預設情況下應用程式集區配置為每隔30秒Ping背景工作處理序,當背景工作處理序沒有進行響應時,則認為此背景工作處理序出現故障並預設配置為關閉此背景工作處理序。你可以修改Ping的時間間隔,但是太長的Ping間隔可能會導致Web服務的中斷,而太短的Ping間隔又會消耗更多的系統資源和CPU利用率,因此建議你保留預設配置;
啟用快速失敗保護:如果Web應用程式代碼編寫有問題,它可能會導致背景工作處理序持續出現問題。預設情況下應用程式集區配置為啟用快速失敗保護,當背景工作處理序在配置的時間段(預設為5分鐘)內發生的失敗次數超過了配置的值(預設為5次),則禁用此應用程式集區。
啟動時間限制:IIS等待屬於此應用程式集區的背景工作處理序啟動的時間,當背景工作處理序啟用時間超出此設定值時,IIS會在事件記錄中進行記錄;
關閉時間限制:當IIS檢測到某個背景工作處理序出現故障時,將此背景工作處理序標記為關閉,此選項指定了IIS等待背景工作處理序自動關閉的時間限制,如果超出此時間限制後背景工作處理序尚未關閉,則IIS強行關閉背景工作處理序。
標識
在標識標籤,你可以配置背景工作處理序所啟動並執行使用者賬戶。在IIS 5或者當IIS 6運行在IIS 5隔離模式時,背景工作處理序運行在本地系統賬戶,而運行在背景工作處理序隔離模式下的IIS 6的背景工作處理序運行在網路服務賬戶下,這降低了系統被攻擊的可能性。
你可以配置背景工作處理序運行在預定義的本地系統、本地服務或網路服務賬戶下,也可以配置為使用某個自訂的使用者賬戶。建議使用預設的網路服務賬戶;不過如果為了更高的安全性,可以配置使用自訂的使用者賬戶,不過建議你只是將此自訂使用者加入到IIS_WPG使用者組中,因此IIS_WPG使用者組包含了可以啟動和運行背景工作處理序的最小許可權。