正在加載中...
網(wǎng)站公告
返回為了提高服務(wù)器的穩(wěn)定性,西部數(shù)碼自主研發(fā)的IIS自動(dòng)監(jiān)控精靈經(jīng)過(guò)長(zhǎng)期的系統(tǒng)測(cè)試后,于即日起正式上線(xiàn),這將進(jìn)一步提高西部數(shù)碼虛擬主機(jī)系統(tǒng)的穩(wěn)定性,防止極個(gè)別客戶(hù)太占資源而影響整臺(tái)服務(wù)器不穩(wěn)定或者速度慢的情況.
在虛擬主機(jī)的資源限制方面,有的服務(wù)商是直接將虛擬主機(jī)的cpu占用情況限為1%或3%,5%等; 有的服務(wù)商是不限cpu,而只限iis連接數(shù)等;有的服務(wù)商是不做任何限制.
虛擬主機(jī)一般是一兩百個(gè)客戶(hù)共享一臺(tái)服務(wù)器, 如果不做任何限制,勢(shì)必會(huì)發(fā)生極個(gè)別客戶(hù)太占資源而影響其他客戶(hù)的速度的情況.舉例來(lái)說(shuō): 20個(gè)員工共享2M的adsl上網(wǎng), 公司是不做速度限制的,平時(shí)大家打開(kāi)網(wǎng)頁(yè)的速度都還比較快. 但是如果發(fā)生某個(gè)員工長(zhǎng)期利用電腦下載電影的情況, 這一個(gè)員工就可以占用到90%以上的帶寬,其他員工上網(wǎng)的速度就會(huì)其慢無(wú)比了. 所以網(wǎng)管要定期檢查這種情況,如果發(fā)現(xiàn)了,會(huì)警告該員工叫他不能長(zhǎng)期這樣占用帶寬. 如果網(wǎng)管為了省事,直接利用技術(shù)手段將帶寬平均分配給所有的員工并給予強(qiáng)行限制,例如每個(gè)人平均分10K的帶寬, 則不會(huì)發(fā)生個(gè)別員工太占帶寬的情況,但是這樣情況下大家的速度都變得很慢了. 因?yàn)閹捵罡咧挥?0K, 在原來(lái)不限制的情況下,因?yàn)椴⒉皇撬袉T工都在同時(shí)訪(fǎng)問(wèn)網(wǎng)絡(luò),所以理論上瞬時(shí)速度可以達(dá)到200K左右. 理想的情況應(yīng)該是:平時(shí)大家共享上網(wǎng),不要限制帶寬,如果發(fā)現(xiàn)某個(gè)員工經(jīng)常占用帶寬過(guò)多,就對(duì)他進(jìn)行警告或者單獨(dú)對(duì)他進(jìn)行帶寬限制. 其實(shí)虛擬主機(jī)的限制原理也應(yīng)該跟上面的情況相似,既不能強(qiáng)行平均限制(如果限為1%的cpu會(huì)導(dǎo)致很多的用戶(hù)經(jīng)常打不開(kāi)的情況),也不能沒(méi)有任何限制. 而是應(yīng)該定期監(jiān)控,發(fā)現(xiàn)太占資源的,對(duì)該用戶(hù)單獨(dú)限制.
虛擬主機(jī)的限制方式中, 服務(wù)商一般通過(guò)iis連接數(shù)或者流量限制來(lái)控制用戶(hù)的網(wǎng)站的訪(fǎng)問(wèn)量. 一般情況下,訪(fǎng)問(wèn)量比較大的網(wǎng)站,流量也比較大,占資源情況也比較多. 但是有些特殊情況,用戶(hù)的訪(fǎng)問(wèn)量很小,流量也很小,但是占用cpu卻很多. 這主要是因?yàn)椴涣嫉某绦蛟O(shè)計(jì)引起的. 比如一個(gè)死循環(huán)程序,可能只有幾行代碼,只有一個(gè)用戶(hù)訪(fǎng)問(wèn). 但是它能占到50%以上的cpu. 如下圖所示:

在這個(gè)軟件問(wèn)市以前,我司的處理流程是網(wǎng)管定期上每臺(tái)虛擬主機(jī)服務(wù)器觀察cpu占用情況.如果發(fā)現(xiàn)一個(gè)進(jìn)程連續(xù)占用cpu超過(guò)20%以上, 則用命令iisapp -a 分析出該進(jìn)程所對(duì)應(yīng)的虛擬主機(jī)進(jìn)程池的名稱(chēng).然后新建一個(gè)進(jìn)程池,將太占資源的進(jìn)程池中的網(wǎng)站分配一半到新進(jìn)程池中.再繼續(xù)觀察; 其后繼續(xù)用二分法直至進(jìn)程池中只剩一個(gè)網(wǎng)站,就知道是這個(gè)網(wǎng)站太占資源了,并對(duì)其進(jìn)行限制. 這一過(guò)程視網(wǎng)站的多少,一般需要20分鐘以上. 面對(duì)上百臺(tái)服務(wù)器, 用手工排查的辦法顯然效率極低,會(huì)錯(cuò)過(guò)很多網(wǎng)站太占資源的情況. 現(xiàn)在我司開(kāi)發(fā)的IIS自動(dòng)監(jiān)控精靈,可以在幾秒鐘之內(nèi)就能發(fā)現(xiàn)是哪個(gè)網(wǎng)站太占資源.
我司目前使用的監(jiān)控規(guī)則:默認(rèn)情況下所有虛擬主機(jī)用戶(hù)不限制CPU占用情況. 虛擬主機(jī)服務(wù)器根據(jù)設(shè)置好的cpu占用情況(如20%),每5分鐘監(jiān)測(cè)一次所有進(jìn)程池的cpu占用情況.如果一個(gè)進(jìn)程池連續(xù)兩次占用cpu超過(guò)20%,則對(duì)該進(jìn)程池的所有網(wǎng)站拆分為獨(dú)立的進(jìn)程池. 如果拆分后的進(jìn)程池連續(xù)兩次超過(guò)設(shè)定好的cpu情況(如15%),則系統(tǒng)認(rèn)為該網(wǎng)站是太占資源的,就將它轉(zhuǎn)到一個(gè)新建的單獨(dú)進(jìn)程池中,并根據(jù)虛擬主機(jī)的型號(hào)進(jìn)行cpu限制(如3%~20%). 其他臨時(shí)進(jìn)程則自動(dòng)還原至他原來(lái)的進(jìn)程池. 被限制的網(wǎng)站在15天后自動(dòng)解除限制,還原至原來(lái)的進(jìn)程池.經(jīng)實(shí)踐:一個(gè)200站點(diǎn)的虛擬主機(jī)一般會(huì)發(fā)現(xiàn)1至3個(gè)太占資源的網(wǎng)站. 經(jīng)處理后服務(wù)器的穩(wěn)定性能大大地提高.
該軟件為共享軟件,歡迎廣大客戶(hù)下載測(cè)試, 詳情請(qǐng)?jiān)L問(wèn) IIS自動(dòng)監(jiān)控精靈 .
西部數(shù)碼致力于為您提供更快,更好,更穩(wěn)定的服務(wù)! 您的支持,是我們不斷創(chuàng)新的動(dòng)力!
西部數(shù)碼
2007-4-20