亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

IIS6.0應(yīng)用程序池的性能優(yōu)化和設(shè)置技巧分享第1/2頁

 更新時(shí)間:2011年04月17日 23:37:26   作者:  
公司的一個(gè)網(wǎng)站程序長時(shí)間運(yùn)行后,速度變慢,重新啟動(dòng)網(wǎng)站后速度明顯變快,估計(jì)是網(wǎng)站程序占用的內(nèi)存和CPU資源沒能及時(shí)釋放,才需要每隔一段時(shí)間重啟網(wǎng)站釋放資源。

IIS6.0應(yīng)用程序池回收和工作進(jìn)程

公司的一個(gè)網(wǎng)站程序長時(shí)間運(yùn)行后,速度變慢,重新啟動(dòng)網(wǎng)站后速度明顯變快,估計(jì)是網(wǎng)站程序占用的內(nèi)存和CPU資源沒能及時(shí)釋放,才需要每隔一段時(shí)間重啟網(wǎng)站釋放資源。但手工重啟總不能算解決問題的方法,怎樣才能實(shí)現(xiàn)自動(dòng)管理呢?IIS6.0的應(yīng)用程序池自動(dòng)回收功能可以解決這一問題。

應(yīng)用程序池是將一個(gè)或多個(gè)應(yīng)用程序鏈接到一個(gè)或多個(gè)工作進(jìn)程集合的配置。因?yàn)閼?yīng)用程序池中的應(yīng)用程序與其他應(yīng)用程序被工作進(jìn)程邊界分隔,所以某個(gè)應(yīng)用程序池中的應(yīng)用程序不會(huì)受到其他應(yīng)用程序池中應(yīng)用程序所產(chǎn)生的問題的影響。

為Web程序配置應(yīng)用程序池需要以下步驟:1)創(chuàng)建應(yīng)用程序池,右鍵單擊“應(yīng)用程序池”,“新建/應(yīng)用程序池”,命名為KefuAppPool;2)為Web程序指定應(yīng)用程序池,在網(wǎng)站虛擬目錄屬性“應(yīng)用程序設(shè)置”里面的“應(yīng)用程序池(N)”里選擇KefuAppPool;3)應(yīng)用程序池自動(dòng)回收方式的設(shè)置?;厥辗绞接腥缦聨追N:

a.根據(jù)運(yùn)行時(shí)間

系統(tǒng)默認(rèn)是1740分鐘,也就是29個(gè)小時(shí),這個(gè)不是很好控制,建議不用。

b.請(qǐng)求數(shù)目

這個(gè)要看具體的情況了。如果只有10個(gè)請(qǐng)求,可是有5個(gè)都在請(qǐng)求那個(gè)比較占資源的頁面(可能是統(tǒng)計(jì)年度報(bào)表之類),這個(gè)時(shí)候就會(huì)出現(xiàn)進(jìn)程當(dāng)?shù)舻那闆r,如果請(qǐng)求有1000個(gè)可是一個(gè)也沒運(yùn)行比較占資源的頁面,這個(gè)時(shí)候進(jìn)程肯定是很正常的,所以根據(jù)請(qǐng)求的數(shù)目來決定也不一定符合實(shí)際需要。

c.計(jì)劃的時(shí)間

這個(gè)其實(shí)很好,不過具體什么時(shí)間回收好呢?通常我們都是設(shè)置在凌晨?jī)扇c(diǎn)鐘,這個(gè)時(shí)候回收是有必要的,不過針對(duì)出現(xiàn)隨時(shí)可能出現(xiàn)是高內(nèi)存占用并不是很適用。

d.內(nèi)存(虛擬內(nèi)存或已使用的內(nèi)存)

這個(gè)針對(duì)出現(xiàn)內(nèi)存問題引起的進(jìn)程當(dāng)?shù)魧?shí)在太合適了,不過設(shè)置多大的值比較好是一個(gè)很重要的問題,值不能太小了,否則如果訪問量都很大超過這個(gè)值的時(shí)候也會(huì)自動(dòng)回收,這個(gè)就很沒必要了。一定要多多觀察進(jìn)程的實(shí)際占用情況再做決定。

下面重點(diǎn)談?wù)剬?duì)工作進(jìn)程回收應(yīng)用程序池的理解。

默認(rèn)情況下,WWW服務(wù)建立“重疊回收”,即繼續(xù)運(yùn)行要終止的工作進(jìn)程,直到啟動(dòng)新的工作進(jìn)程后為止。 在重疊回收方案中,要回收的進(jìn)程繼續(xù)處理請(qǐng)求,同時(shí) WWW 服務(wù)創(chuàng)建一個(gè)替代工作進(jìn)程。在停止舊工作進(jìn)程之前啟動(dòng)新的工作進(jìn)程,然后將請(qǐng)求定向到新的進(jìn)程。此設(shè)計(jì)可以防止服務(wù)中斷,因?yàn)榕f進(jìn)程關(guān)閉前仍然保持與 HTTP.sys 的通信以處理請(qǐng)求。因?yàn)榭芍丿B關(guān)閉或啟動(dòng)的關(guān)閉超時(shí)值是可以配置的,所以在工作進(jìn)程仍在處理請(qǐng)求的同時(shí)可以終止該進(jìn)程(如果它在時(shí)間限制內(nèi)沒有處理完請(qǐng)求的話)。

注意:當(dāng) WWW 服務(wù)回收某個(gè)工作進(jìn)程時(shí),它并不斷開現(xiàn)有的 TCP/IP 連接。HTTP 協(xié)議堆棧 (HTTP.sys) 建立并維護(hù) TCP/IP 連接。

IIS中的每個(gè)應(yīng)用程序池由一個(gè)“工作進(jìn)程”進(jìn)行管理,也就是"W3wp.exe" 進(jìn)程。如果有多個(gè)應(yīng)用程序池中的程序運(yùn)行,我們就能看到多個(gè)w3wp.exe。這點(diǎn)可以在任務(wù)管理器中看到,如下圖所示,任務(wù)管理器中有兩個(gè)w3wp.exe進(jìn)程,恰好對(duì)應(yīng)兩個(gè)有應(yīng)用程序在運(yùn)行的應(yīng)用程序池。

在命令提示符下運(yùn)行iisapp -a,可以查看w3wp.exe和哪個(gè)應(yīng)用程序池關(guān)聯(lián)。

下圖顯示了手動(dòng)執(zhí)行應(yīng)用程序池KefuAppPool的回收,在回收前,回收中和回收后應(yīng)用程序池和工作進(jìn)程情況。我們注意到:回收過程中增加了一個(gè)工作進(jìn)程(PID=3896),該工作進(jìn)程(PID=3896)啟動(dòng)好后,舊的工作進(jìn)程(PID=5716)才被停止,新工作進(jìn)程(PID=3896)正式替代舊進(jìn)程工作,這就很好的防止了應(yīng)用程序池回收過程中服務(wù)被中斷,保證了程序的連續(xù)運(yùn)行。而其他兩個(gè)應(yīng)用程序池對(duì)應(yīng)的工作進(jìn)程 PID都沒用變。該圖很好的展示了應(yīng)用程序池回收的過程。

應(yīng)用程序池這個(gè)東西著實(shí)讓管理服務(wù)器的人頭疼,如果不設(shè)置好網(wǎng)站隨時(shí)有可能罷工,甚至拖累服務(wù)器。因此特地找來此文章供大家參考。

另外說一點(diǎn),如果網(wǎng)站訪問量不是很大,晚上沒什么人訪問,可以嘗試凌晨重啟服務(wù)器,這樣可以提高服務(wù)器的速度,為第二天的訪問做準(zhǔn)備。

IIS 6的核心在于工作進(jìn)程隔離模式,而應(yīng)用程序池則是定義工作進(jìn)程如何進(jìn)行工作,因此,可以說應(yīng)用程序池是整個(gè)IIS 6的核心。

和IIS 5中只能使用單個(gè)應(yīng)用程序池不同,工作在工作進(jìn)程隔離模式的IIS 6可以創(chuàng)建多個(gè)應(yīng)用程序池,不同的應(yīng)用程序池之間是完全隔離的,某個(gè)應(yīng)用程序池停止服務(wù)時(shí)不會(huì)影響到其他應(yīng)用程序池。

在使用應(yīng)用程序池之前,你應(yīng)該確定你所需要的應(yīng)用程序池?cái)?shù)量??赡苡泻芏嗯笥褧?huì)認(rèn)為,既然不同的應(yīng)用程序池之間是完全隔離的,那么我只需要為每個(gè)Web站點(diǎn)創(chuàng)建一個(gè)應(yīng)用程序池就可以了。這個(gè)辦法在IIS服務(wù)器上具有較少的Web站點(diǎn)數(shù)量時(shí)可以使用,但是如果IIS服務(wù)器上具有很多Web站點(diǎn)數(shù)量,那么這個(gè)辦法就不適用了,因?yàn)椴煌膽?yīng)用程序池在被訪問時(shí)都會(huì)創(chuàng)建各自的工作進(jìn)程,當(dāng)大量的工作進(jìn)程并發(fā)工作時(shí)會(huì)消耗大量的系統(tǒng)資源和CPU利用率,反而會(huì)降低服務(wù)器性能。你應(yīng)該根據(jù)Web站點(diǎn)的重要性、隔離性、所運(yùn)行代碼的安全性和穩(wěn)定性等來對(duì)IIS服務(wù)器上所具有的Web站點(diǎn)進(jìn)行劃分,然后根據(jù)情況來決定所需要的應(yīng)用程序池?cái)?shù)量。對(duì)于那些非常重要的Web站點(diǎn)、需要單獨(dú)隔離的Web站點(diǎn)、所運(yùn)行代碼穩(wěn)定性和安全性并不可靠的Web站點(diǎn)配置為使用各自獨(dú)立的應(yīng)用程序池,而將其他普通的Web站點(diǎn)配置為使用一個(gè)公共的應(yīng)用程序池。

默認(rèn)情況下,在安裝IIS時(shí)會(huì)創(chuàng)建一個(gè)默認(rèn)網(wǎng)站并創(chuàng)建一個(gè)名為DefaultAppPool的應(yīng)用程序池為其使用;默認(rèn)配置下的應(yīng)用程序池已經(jīng)可以很好的進(jìn)行工作,建議你只有在特別需要時(shí)才對(duì)應(yīng)用程序池進(jìn)行配置。

配置應(yīng)用程序池屬性

在IIS管理控制臺(tái)中展開應(yīng)用程序池文件夾,然后右擊對(duì)應(yīng)的應(yīng)用程序池,點(diǎn)擊屬性,你可以在應(yīng)用程序池的屬性中進(jìn)行以下配置:

回收

在回收標(biāo)簽,你可以設(shè)置工作進(jìn)程的回收方式:

回收工作進(jìn)程(分鐘):在工作進(jìn)程運(yùn)行多少分鐘后回收工作進(jìn)程,默認(rèn)啟用,并且設(shè)置為1740分鐘(29小時(shí));

回收工作進(jìn)程(請(qǐng)求數(shù)目):在工作進(jìn)程處理多少 個(gè)HTTP請(qǐng)求后終止此工作進(jìn)程,默認(rèn)禁用,如果啟用則默認(rèn)值為35000;

在下列時(shí)間回收工作進(jìn)程:在指定的時(shí)間回收工作進(jìn)程,默認(rèn)禁用;如需啟用,勾選后點(diǎn)擊添加按鈕添加回收的時(shí)間即可,使用24小時(shí)制定義回收的時(shí)間;

消耗太多內(nèi)存時(shí)回收工作進(jìn)程:

最大虛擬內(nèi)存(兆):當(dāng)工作進(jìn)程使用的虛擬內(nèi)存達(dá)到設(shè)置的值時(shí)回收工作進(jìn)程,默認(rèn)禁用,如果啟用則默認(rèn)值為500 M;建議設(shè)置為不超過虛擬內(nèi)存總數(shù)的70%;

最大使用的內(nèi)存(兆):當(dāng)工作進(jìn)程使用的物理內(nèi)存達(dá)到設(shè)置的值時(shí)回收工作進(jìn)程,默認(rèn)禁用,如果啟用則默認(rèn)值為192 M;建議設(shè)置為不超過物理內(nèi)存總數(shù)的60%;

另外需要注意的是,應(yīng)用程序池具有以下兩種工作進(jìn)程回收方式,不過這兩種回收方式均不會(huì)造成Web服務(wù)的中斷:

默認(rèn)情況下,應(yīng)用程序池使用重疊回收方式。在這種方式下,當(dāng)應(yīng)用程序池要關(guān)閉某個(gè)工作進(jìn)程時(shí),會(huì)先創(chuàng)建一個(gè)工作進(jìn)程,直到新的工作進(jìn)程成功創(chuàng)建后才關(guān)閉舊的工作進(jìn)程;

應(yīng)用程序池也可以先關(guān)閉舊的工作進(jìn)程,然后再創(chuàng)建新的工作進(jìn)程。

如果Web 應(yīng)用程序不支持多實(shí)例運(yùn)行,那么你必須配置應(yīng)用程序池禁止使用重疊回收方式。此配置無法在IIS管理控制臺(tái)中進(jìn)行修改,只能通過在 metabase.xml中修改對(duì)應(yīng)應(yīng)用程序池的DisallowOverlappingRotation metabase屬性為true進(jìn)行。

相關(guān)文章

最新評(píng)論