詳細(xì)解說IIS應(yīng)用程序池以及運用程序池回收AppPool
指定標(biāo)識應(yīng)用程序池設(shè)置
這些回收應(yīng)用程序池設(shè)置是在應(yīng)用程序池的屬性對話框的“標(biāo)識”選項卡中指定的。
設(shè)置標(biāo)識應(yīng)用程序池設(shè)置
- 打開 IIS 管理控制臺,單擊加號展開本地計算機。
- 單擊加號展開“應(yīng)用程序池”文件夾。
- 右擊適當(dāng)?shù)膽?yīng)用程序池,然后單擊“屬性”。出現(xiàn)應(yīng)用程序池的屬性對話框。
- 單擊“標(biāo)識”選項卡,然后設(shè)置適當(dāng)?shù)膽?yīng)用程序池設(shè)置。
應(yīng)用程序池“屬性”對話框的“標(biāo)識”選項卡
用戶名和密碼
“用戶名”和“密碼”分別是等效于 username 和 password ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。這兩種設(shè)置結(jié)合使用來使輔助進程使用指定的 Windows 標(biāo)識運行。默認(rèn)情況下,輔助進程使用“網(wǎng)絡(luò)服務(wù)”(Network Service) 帳戶。但是,如果選擇了“可配置”單選按鈕并且“用戶名”和“密碼”文本框包含有效值,則輔助進程將使用指定的 Windows 標(biāo)識。此外,必須將 Windows 標(biāo)識添加到 IIS_WPG 用戶組。
將 Windows 標(biāo)識添加到 IIS_WPG 用戶組
- 在“開始”菜單上,右擊“我的電腦”,然后單擊“管理”。
- 通過右擊加號展開“本地用戶和組”節(jié)點。
- 單擊“組”文件夾。在右窗格中將列出在該計算機上定義的所有組的列表。
- 右擊“IIS_WPG”,然后單擊“添加到組”。
- 單擊“添加”按鈕并輸入要用于輔助進程的帳戶。
指定健全應(yīng)用程序池設(shè)置
這些回收應(yīng)用程序池設(shè)置是在應(yīng)用程序池的屬性對話框的“健全”選項卡中指定的。
設(shè)置健全應(yīng)用程序池設(shè)置
- 打開 IIS 管理控制臺,單擊加號展開本地計算機。
- 單擊加號展開“應(yīng)用程序池”文件夾。
- 右擊適當(dāng)?shù)膽?yīng)用程序池,然后單擊“屬性”。出現(xiàn)應(yīng)用程序池的屬性對話框。
- 單擊“健全”選項卡,然后設(shè)置適當(dāng)?shù)膽?yīng)用程序池設(shè)置。
應(yīng)用程序池“屬性”對話框的“健全”選項卡
啟用 Ping
“啟用 ping”是等效于 pingFrequency ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。它指定 ASP.NET ISAPI 檢查輔助進程是否存在的時間間隔。如果沒有輔助進程,則重新啟動輔助進程。默認(rèn)情況下“啟用 ping”是啟用的而且設(shè)置為 30 秒。通過更改數(shù)值調(diào)節(jié)框中的值,可以指定一個不同的時間間隔。若要禁用 ping 操作,請清除“啟用 ping”復(fù)選框。
關(guān)閉時間限制
“關(guān)閉時間限制”是等效于 shutDownTimeout ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。它指定提供給輔助進程的用來正常關(guān)閉的時間長度。如果輔助進程在指定的時間長度內(nèi)沒有關(guān)閉,則 ASP.NET ISAPI 將結(jié)束該輔助進程。默認(rèn)情況下“關(guān)閉時間限制”設(shè)置為 90 秒。通過更改數(shù)值調(diào)節(jié)框中的值,可以指定一個不同的時間限制。
通過性能應(yīng)用程序池設(shè)置,可以控制輔助進程的操作。以下幾節(jié)描述如何指定性能應(yīng)用程序池設(shè)置。
指定性能應(yīng)用程序池設(shè)置
性能應(yīng)用程序池設(shè)置是在應(yīng)用程序池的屬性對話框的“性能”選項卡中指定的。
設(shè)置性能應(yīng)用程序池設(shè)置
- 打開 IIS 管理控制臺,單擊加號展開本地計算機。
- 單擊加號展開“應(yīng)用程序池”文件夾。
- 右擊適當(dāng)?shù)膽?yīng)用程序池,然后單擊“屬性”。出現(xiàn)應(yīng)用程序池的屬性對話框。
- 單擊“性能”選項卡,然后設(shè)置適當(dāng)?shù)膽?yīng)用程序池設(shè)置。
應(yīng)用程序池“屬性”對話框的“性能”選項卡
網(wǎng)絡(luò)園
“網(wǎng)絡(luò)園”是等效于 webGarden 和 cpuMask ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。若要啟用“網(wǎng)絡(luò)園”,請將“輔助進程的最大數(shù)目”設(shè)置為高于 1 的值。該值還為應(yīng)用程序池確定最大進程數(shù)。
因為網(wǎng)絡(luò)園支持使用多個進程,所以,每一進程在應(yīng)用程序狀態(tài)、進程內(nèi)會話狀態(tài)、緩存和靜態(tài)數(shù)據(jù)方面都有其自己的副本。網(wǎng)絡(luò)園不應(yīng)用于所有應(yīng)用程序,尤其在這些應(yīng)用程序需要維護狀態(tài)的情況下。在決定網(wǎng)絡(luò)園模式是否適用前,一定要檢查應(yīng)用程序的性能。
在使用網(wǎng)絡(luò)園時,理解會話狀態(tài)和循環(huán)工作的方式是十分重要的??紤]其他應(yīng)用程序池設(shè)置影響應(yīng)用程序的方式也是十分重要的。
使用輔助進程隔離模式的網(wǎng)絡(luò)園中的會話狀態(tài)
在使用會話狀態(tài)時,請注意,輔助進程隔離模式不支持將請求傳送回引起請求返回的進程。當(dāng)一個應(yīng)用程序運行在處于 ASP 會話狀態(tài)或應(yīng)用程序狀態(tài)的網(wǎng)絡(luò)園中時,該應(yīng)用程序需要將其請求發(fā)送回發(fā)起的進程。在使用 IIS 6.0 應(yīng)用程序池時,要確保應(yīng)用程序讓一個連接總保持為打開狀態(tài),以便其請求被發(fā)送回適當(dāng)?shù)倪M程。如果此連接沒有保持為打開狀態(tài),則請求將被發(fā)送到為網(wǎng)絡(luò)園提供服務(wù)的下一可用的輔助進程。
使用輔助進程隔離模式的網(wǎng)絡(luò)園中的循環(huán)
循環(huán)是一種用于應(yīng)用程序的負(fù)載平衡方法。在每個請求到達(dá)時,它會自動被發(fā)送到下一可用進程。例如,如果網(wǎng)絡(luò)園具有 4 個進程,則請求被發(fā)送到進程 0、1、2 和 3,并依照這一順序發(fā)送。然后為其他請求重復(fù)該循環(huán)。
使用輔助進程隔離模式的網(wǎng)絡(luò)園中的應(yīng)用程序池參數(shù)
某些應(yīng)用程序池設(shè)置具有特定于網(wǎng)絡(luò)園的行為。下表總結(jié)了這些行為。
應(yīng)用程序池設(shè)置 | 行為 |
---|---|
AppPoolQueueLength | 此參數(shù)的值不受影響。但是,請求是通過在所有為網(wǎng)絡(luò)園提供服務(wù)的輔助進程上循環(huán)而分發(fā)的。 |
DisallowOverlappingRotation | 網(wǎng)絡(luò)園中沒有行為更改。 |
DisallowRotationOnConfigChange | 網(wǎng)絡(luò)園中沒有行為更改。 |
IdleTimeout | 為每一進程獨立計算,這樣各進程的超時可以彼此獨立。根據(jù)所選擇的路由算法,將自動配置要加載的進程的數(shù)目。 |
LoadBalancerCapabilities | 網(wǎng)絡(luò)園中沒有行為更改。 |
OrphanAction | 網(wǎng)絡(luò)園中沒有行為更改。 |
OrphanWorkerProcess | 網(wǎng)絡(luò)園中沒有行為更改。 |
PeriodicRestartTime | 此參數(shù)的含義在網(wǎng)絡(luò)園中發(fā)生了變化。在網(wǎng)絡(luò)園中,此參數(shù)指定回收所有進程的時間間隔。進程在指定時間長度內(nèi)以平均的時間間隔輪流回收。例如,如果網(wǎng)絡(luò)園具有四個進程并且 PeriodicRestartTime 被設(shè)置為 20 小時,則在 5 小時后回收第一個進程,在 10 小時后回收第二個進程,依此類推。
注意 如果進程崩潰,則向替代進程提供 PeriodicRestartTime 的運行時值。這使得崩潰的進程可以在指定的 PeriodicRestartTime 內(nèi)與其他進程一起回收。 |
PeriodicRestartRequests | 此參數(shù)的含義在網(wǎng)絡(luò)園中發(fā)生了變化。在網(wǎng)絡(luò)園中,此參數(shù)指定在達(dá)到某一請求數(shù)目后回收所有進程。進程在指定的請求數(shù)目內(nèi)按平均時間間隔輪流回收。例如,如果網(wǎng)絡(luò)園具有四個進程并且 PeriodicRestartRequests 設(shè)置為 40,000 個請求,則第在 10,000 個請求后回收一個進程,在 20,000 個請求后回收第二個進程,依此類推。在回收了第一組進程后,將向下一組進程指派 40,000 這一 PeriodicRestartRequests 值。 |
PeriodicRestartSchedule | 網(wǎng)絡(luò)園中沒有行為更改。如果管理員決定使用基于時間表的回收,則同時回收所有網(wǎng)絡(luò)園進程。 |
PingInterval | 網(wǎng)絡(luò)園中沒有行為更改。 |
PingResponseTime | 網(wǎng)絡(luò)園中沒有行為更改。 |
PingingEnabled | 網(wǎng)絡(luò)園中沒有行為更改。 |
RapidFailProtection | 網(wǎng)絡(luò)園中沒有行為更改。例如,在一段時間間隔內(nèi)計算整個網(wǎng)絡(luò)園的失敗總數(shù)然后進行比較。這提供了額外的恢復(fù)能力。 |
RapidFailProtectionInterval | 網(wǎng)絡(luò)園中沒有行為更改。例如,在一段時間間隔內(nèi)計算整個網(wǎng)絡(luò)園的失敗總數(shù)然后進行比較。這提供了額外的恢復(fù)能力。 |
RapidFailProtectionMaxCrashes | 網(wǎng)絡(luò)園中沒有行為更改。例如,在一段時間間隔內(nèi)計算整個網(wǎng)絡(luò)園的失敗總數(shù)然后進行比較。這提供了額外的恢復(fù)能力。 |
SMPAffinitized | 網(wǎng)絡(luò)園中沒有行為更改。 |
SMPProcessorAffinityMask | 在 IIS 5.0 隔離模式中,您只能具有與 CPU 的數(shù)目一樣多的輔助進程。在輔助進程隔離模式中,多個 CPU 可用于單個輔助進程。 |
ShutdownTimeLimit | 網(wǎng)絡(luò)園中沒有行為更改。 |
StartupTimeLimit | 網(wǎng)絡(luò)園中沒有行為更改。 |
空閑超時
“空閑超時”是等效于 idleTimeout ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。它指定輔助進程或應(yīng)用程序池在開始處于不活動狀態(tài)后,過多長時間將其關(guān)閉。默認(rèn)情況“空閑超時”是啟用的而且設(shè)置為 20 分鐘。通過更改數(shù)值調(diào)節(jié)框中的值,可以指定一個不同的時間限制。若要禁用“空閑超時”,請清除該復(fù)選框。
請求隊列限制
“請求隊列限制”是等效于 restartQueueLimit ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。它指定在異常終止后等待輔助進程啟動時在 ASP.NET ISAPI 中排隊的請求的最大數(shù)目。默認(rèn)情況下“請求隊列限制”是啟用的而且設(shè)置為 1000 個請求。通過更改數(shù)值調(diào)節(jié)框中的值,可以對排隊的請求的數(shù)目指定不同的限制。若要禁用“請求隊列限制”,請清除該復(fù)選框。
通過回收應(yīng)用程序池設(shè)置,可以控制如何恢復(fù)系統(tǒng)資源。以下幾節(jié)介紹如何指定回收應(yīng)用程序池設(shè)置。
指定回收應(yīng)用程序池設(shè)置
回收應(yīng)用程序池設(shè)置是在應(yīng)用程序池的屬性對話框的“回收”選項卡中指定的。
設(shè)置回收應(yīng)用程序池設(shè)置
- 打開 IIS 管理控制臺,單擊加號展開本地計算機。
- 單擊加號展開“應(yīng)用程序池”文件夾。
- 右擊適當(dāng)?shù)膽?yīng)用程序池,然后單擊“屬性”。出現(xiàn)應(yīng)用程序池的屬性對話框。
- 單擊“回收”選項卡,然后設(shè)置適當(dāng)?shù)膽?yīng)用程序池設(shè)置。
應(yīng)用程序池“屬性”對話框的“回收”選項卡
內(nèi)存回收
“內(nèi)存回收”是等效于 memoryLimit ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。它指定輔助進程可以使用的最大內(nèi)存量。如果輔助進程超出了這一數(shù)量,將創(chuàng)建新的進程來替換它,并且當(dāng)前所有請求都被重新分配給該新進程。在 memoryLimit ASP.NET 進程模型設(shè)置與“內(nèi)存回收”應(yīng)用程序池設(shè)置之間有兩個重要的區(qū)別:
- memoryLimit ASP.NET 進程模型設(shè)置只使用物理內(nèi)存?!皟?nèi)存回收”應(yīng)用程序池設(shè)置允許您為物理內(nèi)存和虛擬內(nèi)存分別指定限制。由于公共語言運行庫的垃圾回收器工作的方式,物理內(nèi)存(或物理內(nèi)存和虛擬內(nèi)存的組合)常用于 ASP.NET 應(yīng)用程序。虛擬內(nèi)存常用于將堆劃分為多個片斷的傳統(tǒng)本機應(yīng)用程序。
- “內(nèi)存回收”應(yīng)用程序池設(shè)置是按兆字節(jié) (MB) 指定的,而不是按相對于總內(nèi)存的百分比指定的。
回收輔助進程
“回收輔助進程”是等效于 requestLimit ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。它指定導(dǎo)致輔助進程或應(yīng)用程序池被回收的請求的數(shù)目。默認(rèn)情況下“回收輔助進程”是禁用的。若要啟用“回收輔助進程”,請選取該復(fù)選框并在數(shù)值調(diào)節(jié)框中指定請求數(shù)。
回收多個輔助進程
“回收多個輔助進程”是等效于 timeout ASP.NET 進程模型設(shè)置的應(yīng)用程序池設(shè)置。它指定回收輔助進程或應(yīng)用程序池的時間間隔。默認(rèn)情況下“回收多個輔助進程”是啟用的而且設(shè)置為 120 分鐘。通過更改數(shù)值調(diào)節(jié)框中的值,可以指定一個不同的時間間隔。若要禁用“回收多個輔助進程”,請清除該復(fù)選框。
相關(guān)文章
登錄遠(yuǎn)程桌面時遇到“由于客戶端檢測到一個協(xié)議錯誤(代碼0x1104)”
登錄遠(yuǎn)程桌面時遇到“由于客戶端檢測到一個協(xié)議錯誤(代碼0x1104)”,重新連接N次都還是這個錯誤提示,最后再重起電腦,還是沒用。研究了一下錯誤終于解決了。2014-06-06IIS7.5 檢測到在集成的托管管道模式下不適用的 ASP.NET設(shè)置
這篇文章主要介紹了IIS7.5 檢測到在集成的托管管道模式下不適用的 ASP.NET設(shè)置 ,需要的朋友可以參考下2015-01-01WebsitePanel Standalone Server安裝配置方法
這篇文章主要為大家介紹下WebsitePanel安裝后的配置方法,結(jié)合了上一篇文章,需要的朋友可以參考下2013-12-12win2003遠(yuǎn)程退出后系統(tǒng)自動注銷問題的解決方法
這篇文章主要介紹了win2003遠(yuǎn)程退出后系統(tǒng)自動注銷問題的解決方法,需要的朋友可以參考下2017-02-02windows?server?2012?r2?服務(wù)器部署tp6?項目
這篇文章主要介紹了windows?server?2012?r2?服務(wù)器部署tp6?項目,需要的朋友可以參考下2022-03-03當(dāng)前標(biāo)識沒有對"Temporary ASP.NET Files"的寫訪問權(quán)限的解決辦法
這篇文章主要介紹了在IIS上部署程序后出現(xiàn)錯誤-當(dāng)前標(biāo)識(NT AUTHORITY/NETWORK SERVICE)沒有對C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files的寫訪問權(quán)限,需要的朋友可以參考下2016-06-06windows下指定IP地址遠(yuǎn)程訪問服務(wù)器的設(shè)置方法
這篇文章主要為大家詳細(xì)介紹了windows下指定IP地址進行遠(yuǎn)程訪問服務(wù)器設(shè)置方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-09-09Windows server 2016 安裝oracle的教程圖解
這篇文章主要介紹了Windows server 2016 安裝oracle的教程圖解,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-06-06