蜜桃二区,毒医王妃不好惹免费阅读全文,奶水奶头咂着奶小说,被快递员上门做到高潮,日本巨乳人妻无删减,情爱小说连载,暴躁妹妹csgo,床戏描写多的小说片段,给弟弟的家规

專業(yè)網(wǎng)站建設B/S軟件開發(fā)專業(yè)微信營銷專業(yè)技術建設團隊做客戶滿意度最高的軟件公司
鄭州網(wǎng)站建設、鄭州網(wǎng)站開發(fā)
 

IIS應用程序池回收圖文詳解

作者:網(wǎng)站建設出處:學眾科技發(fā)布時間:2020年07月07日點擊數(shù):2391

什么是應用程序池呢?這是微軟的一個全新概念:應用程序池是將一個或多個應用程序鏈接到一個或多個工作進程集合的配置。因為應用程序池中的應用程序與其他應用程序被工作進程邊界分隔,所以某個應用程序池中的應用程序不會受到其他應用程序池中應用程序所產(chǎn)生的問題的影響。

Windows 2003同時支持兩種工作模式,默認為ISS 6.0工作進程隔離模式。工作進程隔離模式防止一個應用程序或站點停止了而影響另一個應用程序或站點,大大增強了IIS的可靠性。那么如何設置兩種工作模式呢?

啟動IIS管理器,右擊網(wǎng)站,選擇“屬性”,打開屬性對話框。

在IIS 6.0工作進程隔離模式下,所有的應用程序代碼都在隔離環(huán)境中運行,它們是如何進行隔離的呢?Windows 2003新增了應用程序池,工作進程隔離模式允許客戶創(chuàng)建多個應用程序池,每個應用程序池都可以有不同的配置。因為這些應用程序池直接從內核(而非WWW服務)接收它們的請求,所以性能和可靠性得到了增強。要隔離運行在同一臺計算機上但屬于不同網(wǎng)站的Web應用程序,需要為每個網(wǎng)站創(chuàng)建單獨的應用程序池。

創(chuàng)建應用程序池

在IIS管理器中,打開本地計算機,右鍵單擊“應用程序池”,選擇新建“應用程序池” (必須在工作進程隔離模式下才能建立應用程序池)?!皯贸绦虺孛Q”框中,輸入新的應用程序池名稱。如果在“應用程序池 ID”框中出現(xiàn)的 ID (如:AppPool #1)不是您想要的,可進行重命名。如果您單擊了“將現(xiàn)有應用程序池作為模板”,請在“應用程序池名稱”框中右鍵單擊想要用來作為模板的應用程序池。最后單擊[確定]。

指派應用程序池


在 IIS 管理器中,右鍵單擊您要為其指派應用程序池的應用程序,然后單擊“屬性”。單擊“主目錄”選項卡,確認您正在指派的目錄或虛擬目錄的“應用程序名”是否已被填寫。如果“應用程序名”框尚未被填寫,請單擊“創(chuàng)建”,然后輸入名稱。


在“應用程序池”列表框中,選擇您想要為其指派的應用程序池的名稱。最后單擊[確定]。

一起來看看有關應用程序池的一些問題。應用程序池的“屬性”對話框有四頁——回收,性能,運行狀況,標識,如圖六所示。在這些選項頁中,最引人注目的恐怕就是“回收”頁,使用該選項頁可以管理工作進程的回收。在工作進程隔離模式中,IIS可以配置成定期重新啟動應用程序池中的工作進程,從而更好地管理那些有錯誤的工作進程。這確保了池中的應用程序運行正常,并且可以恢復丟失的系統(tǒng)資源。為了回收工作進程,失敗工作進程接收請求的能力將被限制,直到它處理完存儲在請求隊列中的所有剩余請求。為了排出當前請求,可以給予進程配置限制。同一命名空間組的替換工作進程在舊的工作進程停止前啟動,從而防止服務中斷。舊的進程完成其未決的請求,然后正常關閉,或者如果在達到了配置的時間限制、請求數(shù)、設置的時間計劃,或當達到指定的內存用量限制后仍沒有關閉,則明確地終止進程。默認情況下,應用程序池每隔1740分鐘(29小時)回收一次。

W3SVC根據(jù)“運行狀況”頁的選項來判斷應用程序池運行是否正常,包括:每隔指定的時間Ping工作進程,時間按秒計,默認值30秒啟動時間限制(工作進程必須在指定的時間內開始)關閉時間限制(工作進程必須在指定的時間內關閉)是否啟動快速失敗保護(如果在指定的時間段內一定數(shù)目的工作進程發(fā)生失敗,則禁用應用程序池)。另外,ISAPI應用程序(包括ASP.NET和asp.dll)可以聲明自己不再適合提供服務,要求回收。

默認情況下,當IIS 6.0回收一個池時,它會使用一種稱為overlapped recycle的回收技術。在這種回收模式下,失敗的工作進程仍會保持運行狀態(tài),同時創(chuàng)建一個新的工作進程。IIS 6.0把新傳入的請求傳遞給新的工作進程,但不拆除老的工作進程,直至老的工作進程處理完它隊列中的請求,或者遇到超時錯誤。在此期間,TCP/IP連接不會丟失,因為有http.sys保持著連接的有效性。當失敗的工作進程超時出錯時,下一個請求傳遞給工作進程的請求是新的請求,因此原來保存在進程中的會話信息就會丟失。所有這類回收操作都自動進行,無需管理員干預,而且在大多數(shù)情況下,不會造成明顯的服務中斷現(xiàn)象。如有必要,可以將配置數(shù)據(jù)屬性LogEventOnRecycle的值設置為1,指示W(wǎng)3SVC執(zhí)行回收操作時生成一條事件日志記錄。

對于那些不能以多個實例運行的應用程序,overlapped recycle回收技術可能引起問題。如果遇到這類問題,可以將配置數(shù)據(jù)屬性DissallowOverlappingRotation的值設置成True(1),關閉某個應用程序池回收操作時的進程“重疊”現(xiàn)象。另外,對于失敗的工作進程,有時我們可能不想將它拆除,仍舊保留該進程,以便檢測和尋找發(fā)生問題的根源,這時可以將配置數(shù)據(jù)屬性OrphanActionExe設置成執(zhí)行文件的名字,使得工作進程成為“孤兒”時執(zhí)行文件仍保持運行狀態(tài)。

另一個與應用程序池有關的特性是,IIS 6.0允許將應用程序池配置成一個Web園(Web Garden)。要理解Web園的概念,可以設想這樣一種情形:假設有一個IIS 5.0服務器和三個Web網(wǎng)站,每一個Web網(wǎng)站運行著相同的應用程序,如果IIS 5.0能夠自動按照圓形循環(huán)的模式將請求依次發(fā)送給這些功能上等價、實際上分離的Web網(wǎng)站,將負載分離到三個不同的進程,就可以構成一個小型的Web農(nóng)場(Web Farm)——這就是Web園。

在IIS 6.0的Web園中,我們不必創(chuàng)建額外的Web網(wǎng)站,只要指定用于某個應用程序池的工作進程的數(shù)量就可以了。具體的配置步驟是:打開應用程序池的“屬性”對話框,轉到“性能”頁,在“Web園”下面的“最大工作進程數(shù)”輸入框中輸入進程數(shù)量,如圖八。當服務器的負載較小,不需要額外的工作進程時,IIS 6.0在一定的時間后(默認20分鐘,可配置)自動縮減實際的工作進程數(shù)量如果負載變大,需要額外的工作進程,IIS 6.0再次增加工作進程數(shù)量。這一切操作都自動進行,不需要管理員干預。



圖6

兩個新的配置數(shù)據(jù)屬性——SMPAffinitze和SMPAffinitzeCPUMask——允許配置為工作進程指派的特定處理器:將SMPAffinitized屬性設置成true表示應該把分配給應用程序池的特定工作進程指派給特定的CPU,SMPProcessorAffinityMask屬性用來配置十六進制的處理器掩碼,該十六進制處理器掩碼指出應用程序池中的工作進程應該綁定到哪個CPU。

指定標識應用程序池設置

這些回收應用程序池設置是在應用程序池的屬性對話框的“標識”選項卡中指定的。

設置標識應用程序池設置

  1. 打開 IIS 管理控制臺,單擊加號展開本地計算機。
  2. 單擊加號展開“應用程序池”文件夾。
  3. 右擊適當?shù)膽贸绦虺?,然后單擊“屬性”。出現(xiàn)應用程序池的屬性對話框。
  4. 單擊“標識”選項卡,然后設置適當?shù)膽贸绦虺卦O置。

應用程序池“屬性”對話框的“標識”選項卡



用戶名和密碼

“用戶名”和“密碼”分別是等效于usernamepasswordASP.NET 進程模型設置的應用程序池設置。這兩種設置結合使用來使輔助進程使用指定的 Windows 標識運行。默認情況下,輔助進程使用“網(wǎng)絡服務”(Network Service) 帳戶。但是,如果選擇了“可配置”單選按鈕并且“用戶名”和“密碼”文本框包含有效值,則輔助進程將使用指定的 Windows 標識。此外,必須將 Windows 標識添加到IIS_WPG用戶組。

將 Windows 標識添加到 IIS_WPG 用戶組

  1. 在“開始”菜單上,右擊“我的電腦”,然后單擊“管理”。
  2. 通過右擊加號展開“本地用戶和組”節(jié)點。
  3. 單擊“組”文件夾。在右窗格中將列出在該計算機上定義的所有組的列表。
  4. 右擊“IIS_WPG”,然后單擊“添加到組”。
  5. 單擊“添加”按鈕并輸入要用于輔助進程的帳戶。

指定健全應用程序池設置

這些回收應用程序池設置是在應用程序池的屬性對話框的“健全”選項卡中指定的。

設置健全應用程序池設置

  1. 打開 IIS 管理控制臺,單擊加號展開本地計算機。
  2. 單擊加號展開“應用程序池”文件夾。
  3. 右擊適當?shù)膽贸绦虺兀缓髥螕簟皩傩浴?。出現(xiàn)應用程序池的屬性對話框。
  4. 單擊“健全”選項卡,然后設置適當?shù)膽贸绦虺卦O置。

應用程序池“屬性”對話框的“健全”選項卡



啟用 Ping

“啟用 ping”是等效于pingFrequencyASP.NET 進程模型設置的應用程序池設置。它指定 ASP.NET ISAPI 檢查輔助進程是否存在的時間間隔。如果沒有輔助進程,則重新啟動輔助進程。默認情況下“啟用 ping”是啟用的而且設置為 30 秒。通過更改數(shù)值調節(jié)框中的值,可以指定一個不同的時間間隔。若要禁用 ping 操作,請清除“啟用 ping”復選框。

關閉時間限制

“關閉時間限制”是等效于shutDownTimeoutASP.NET 進程模型設置的應用程序池設置。它指定提供給輔助進程的用來正常關閉的時間長度。如果輔助進程在指定的時間長度內沒有關閉,則 ASP.NET ISAPI 將結束該輔助進程。默認情況下“關閉時間限制”設置為 90 秒。通過更改數(shù)值調節(jié)框中的值,可以指定一個不同的時間限制。

通過性能應用程序池設置,可以控制輔助進程的操作。以下幾節(jié)描述如何指定性能應用程序池設置。

指定性能應用程序池設置

性能應用程序池設置是在應用程序池的屬性對話框的“性能”選項卡中指定的。

設置性能應用程序池設置

  1. 打開 IIS 管理控制臺,單擊加號展開本地計算機。
  2. 單擊加號展開“應用程序池”文件夾。
  3. 右擊適當?shù)膽贸绦虺?,然后單擊“屬性”。出現(xiàn)應用程序池的屬性對話框。
  4. 單擊“性能”選項卡,然后設置適當?shù)膽贸绦虺卦O置。

應用程序池“屬性”對話框的“性能”選項卡



網(wǎng)絡園

“網(wǎng)絡園”是等效于webGardencpuMaskASP.NET 進程模型設置的應用程序池設置。若要啟用“網(wǎng)絡園”,請將“輔助進程的最大數(shù)目”設置為高于 1 的值。該值還為應用程序池確定最大進程數(shù)。

因為網(wǎng)絡園支持使用多個進程,所以,每一進程在應用程序狀態(tài)、進程內會話狀態(tài)、緩存和靜態(tài)數(shù)據(jù)方面都有其自己的副本。網(wǎng)絡園不應用于所有應用程序,尤其在這些應用程序需要維護狀態(tài)的情況下。在決定網(wǎng)絡園模式是否適用前,一定要檢查應用程序的性能。

在使用網(wǎng)絡園時,理解會話狀態(tài)和循環(huán)工作的方式是十分重要的。考慮其他應用程序池設置影響應用程序的方式也是十分重要的。

使用輔助進程隔離模式的網(wǎng)絡園中的會話狀態(tài)

在使用會話狀態(tài)時,請注意,輔助進程隔離模式不支持將請求傳送回引起請求返回的進程。當一個應用程序運行在處于 ASP 會話狀態(tài)或應用程序狀態(tài)的網(wǎng)絡園中時,該應用程序需要將其請求發(fā)送回發(fā)起的進程。在使用 IIS 6.0 應用程序池時,要確保應用程序讓一個連接總保持為打開狀態(tài),以便其請求被發(fā)送回適當?shù)倪M程。如果此連接沒有保持為打開狀態(tài),則請求將被發(fā)送到為網(wǎng)絡園提供服務的下一可用的輔助進程。

使用輔助進程隔離模式的網(wǎng)絡園中的循環(huán)

循環(huán)是一種用于應用程序的負載平衡方法。在每個請求到達時,它會自動被發(fā)送到下一可用進程。例如,如果網(wǎng)絡園具有 4 個進程,則請求被發(fā)送到進程 0、1、2 和 3,并依照這一順序發(fā)送。然后為其他請求重復該循環(huán)。

使用輔助進程隔離模式的網(wǎng)絡園中的應用程序池參數(shù)

某些應用程序池設置具有特定于網(wǎng)絡園的行為。下表總結了這些行為。

應用程序池設置 行為
AppPoolQueueLength 此參數(shù)的值不受影響。但是,請求是通過在所有為網(wǎng)絡園提供服務的輔助進程上循環(huán)而分發(fā)的。
DisallowOverlappingRotation 網(wǎng)絡園中沒有行為更改。
DisallowRotationOnConfigChange 網(wǎng)絡園中沒有行為更改。
IdleTimeout 為每一進程獨立計算,這樣各進程的超時可以彼此獨立。根據(jù)所選擇的路由算法,將自動配置要加載的進程的數(shù)目。
LoadBalancerCapabilities 網(wǎng)絡園中沒有行為更改。
OrphanAction 網(wǎng)絡園中沒有行為更改。
OrphanWorkerProcess 網(wǎng)絡園中沒有行為更改。
PeriodicRestartTime 此參數(shù)的含義在網(wǎng)絡園中發(fā)生了變化。在網(wǎng)絡園中,此參數(shù)指定回收所有進程的時間間隔。進程在指定時間長度內以平均的時間間隔輪流回收。例如,如果網(wǎng)絡園具有四個進程并且PeriodicRestartTime被設置為 20 小時,則在 5 小時后回收第一個進程,在 10 小時后回收第二個進程,依此類推。
注意 如果進程崩潰,則向替代進程提供PeriodicRestartTime的運行時值。這使得崩潰的進程可以在指定的PeriodicRestartTime內與其他進程一起回收。
PeriodicRestartRequests 此參數(shù)的含義在網(wǎng)絡園中發(fā)生了變化。在網(wǎng)絡園中,此參數(shù)指定在達到某一請求數(shù)目后回收所有進程。進程在指定的請求數(shù)目內按平均時間間隔輪流回收。例如,如果網(wǎng)絡園具有四個進程并且PeriodicRestartRequests設置為 40,000 個請求,則第在 10,000 個請求后回收一個進程,在 20,000 個請求后回收第二個進程,依此類推。在回收了第一組進程后,將向下一組進程指派 40,000 這一PeriodicRestartRequests值。
PeriodicRestartSchedule 網(wǎng)絡園中沒有行為更改。如果管理員決定使用基于時間表的回收,則同時回收所有網(wǎng)絡園進程。
PingInterval 網(wǎng)絡園中沒有行為更改。
PingResponseTime 網(wǎng)絡園中沒有行為更改。
PingingEnabled 網(wǎng)絡園中沒有行為更改。
RapidFailProtection 網(wǎng)絡園中沒有行為更改。例如,在一段時間間隔內計算整個網(wǎng)絡園的失敗總數(shù)然后進行比較。這提供了額外的恢復能力。
RapidFailProtectionInterval 網(wǎng)絡園中沒有行為更改。例如,在一段時間間隔內計算整個網(wǎng)絡園的失敗總數(shù)然后進行比較。這提供了額外的恢復能力。
RapidFailProtectionMaxCrashes 網(wǎng)絡園中沒有行為更改。例如,在一段時間間隔內計算整個網(wǎng)絡園的失敗總數(shù)然后進行比較。這提供了額外的恢復能力。
SMPAffinitized 網(wǎng)絡園中沒有行為更改。
SMPProcessorAffinityMask 在 IIS 5.0 隔離模式中,您只能具有與 CPU 的數(shù)目一樣多的輔助進程。在輔助進程隔離模式中,多個 CPU 可用于單個輔助進程。
ShutdownTimeLimit 網(wǎng)絡園中沒有行為更改。
StartupTimeLimit 網(wǎng)絡園中沒有行為更改。

空閑超時

“空閑超時”是等效于idleTimeoutASP.NET 進程模型設置的應用程序池設置。它指定輔助進程或應用程序池在開始處于不活動狀態(tài)后,過多長時間將其關閉。默認情況“空閑超時”是啟用的而且設置為 20 分鐘。通過更改數(shù)值調節(jié)框中的值,可以指定一個不同的時間限制。若要禁用“空閑超時”,請清除該復選框。

請求隊列限制

“請求隊列限制”是等效于restartQueueLimitASP.NET 進程模型設置的應用程序池設置。它指定在異常終止后等待輔助進程啟動時在 ASP.NET ISAPI 中排隊的請求的最大數(shù)目。默認情況下“請求隊列限制”是啟用的而且設置為 1000 個請求。通過更改數(shù)值調節(jié)框中的值,可以對排隊的請求的數(shù)目指定不同的限制。若要禁用“請求隊列限制”,請清除該復選框。

通過回收應用程序池設置,可以控制如何恢復系統(tǒng)資源。以下幾節(jié)介紹如何指定回收應用程序池設置。

指定回收應用程序池設置

回收應用程序池設置是在應用程序池的屬性對話框的“回收”選項卡中指定的。

設置回收應用程序池設置

  1. 打開 IIS 管理控制臺,單擊加號展開本地計算機。
  2. 單擊加號展開“應用程序池”文件夾。
  3. 右擊適當?shù)膽贸绦虺?,然后單擊“屬性”。出現(xiàn)應用程序池的屬性對話框。
  4. 單擊“回收”選項卡,然后設置適當?shù)膽贸绦虺卦O置。

應用程序池“屬性”對話框的“回收”選項卡

內存回收

“內存回收”是等效于memoryLimitASP.NET 進程模型設置的應用程序池設置。它指定輔助進程可以使用的最大內存量。如果輔助進程超出了這一數(shù)量,將創(chuàng)建新的進程來替換它,并且當前所有請求都被重新分配給該新進程。在memoryLimitASP.NET 進程模型設置與“內存回收”應用程序池設置之間有兩個重要的區(qū)別:

  • memoryLimitASP.NET 進程模型設置只使用物理內存?!皟却婊厥铡睉贸绦虺卦O置允許您為物理內存和虛擬內存分別指定限制。由于公共語言運行庫的垃圾回收器工作的方式,物理內存(或物理內存和虛擬內存的組合)常用于 ASP.NET 應用程序。虛擬內存常用于將堆劃分為多個片斷的傳統(tǒng)本機應用程序。
  • “內存回收”應用程序池設置是按兆字節(jié) (MB) 指定的,而不是按相對于總內存的百分比指定的。

回收輔助進程

“回收輔助進程”是等效于requestLimitASP.NET 進程模型設置的應用程序池設置。它指定導致輔助進程或應用程序池被回收的請求的數(shù)目。默認情況下“回收輔助進程”是禁用的。若要啟用“回收輔助進程”,請選取該復選框并在數(shù)值調節(jié)框中指定請求數(shù)。

回收多個輔助進程

“回收多個輔助進程”是等效于timeoutASP.NET 進程模型設置的應用程序池設置。它指定回收輔助進程或應用程序池的時間間隔。默認情況下“回收多個輔助進程”是啟用的而且設置為 120 分鐘。通過更改數(shù)值調節(jié)框中的值,可以指定一個不同的時間間隔。若要禁用“回收多個輔助進程”,請清除該復選框。

沙澧街