CPU就是服務(wù)器的核心所在,不論咱們處理任何任務(wù)都需求CPU來完成,一旦CPU呈現(xiàn)爆滿,那么咱們的服務(wù)器就會呈現(xiàn)卡頓乃至是死機無法連接等狀況,那么假如咱們的服務(wù)器經(jīng)常呈現(xiàn)CPU爆滿狀況,該如何處理呢?
最常見的一種可能CC攻擊:就是攻擊者控制某些主機不停地發(fā)大量數(shù)據(jù)包給對方服務(wù)器造成服務(wù)器資源耗盡,一直到宕機崩潰。CC主要是用來攻擊頁面的,每個人都有這樣的體驗:當(dāng)一個網(wǎng)頁訪問的人數(shù)特別多的時候,打開網(wǎng)頁就慢了,CC就是模擬多個用戶(多少線程就是多少用戶)不停地進(jìn)行訪問那些需要大量數(shù)據(jù)操作(就是需要大量CPU時間)的頁面,造成服務(wù)器資源的浪費,CPU長時間處于100%,永遠(yuǎn)都有處理不完的連接直至就網(wǎng)絡(luò)擁塞,正常的訪問被中止。
1、檢查程序最大線程數(shù)是否足夠;
2、程序代碼不夠優(yōu)化,如死循環(huán),死鎖;
3、web配置文件的參數(shù)是否不夠優(yōu)化;
4、查看web和系統(tǒng)日志看是否有訪問異常;
5、網(wǎng)站是否被盜鏈;
6、當(dāng)時是否有搜索引擎爬蟲大面積爬取網(wǎng)站;
7、是否受到了小型網(wǎng)絡(luò)攻擊;進(jìn)程是否有異常;
8、檢查機器是否中毒或中木馬;
linux服務(wù)器可以通過系統(tǒng)日志和web日志,和一些top,free,uptime,sar,ps命令查詢原因,windows機器可以通過資源監(jiān)控器分析下。
常見的解決方法
1、關(guān)閉不常用端口和多余啟動項
這里建議用戶關(guān)閉不常用的端口,開啟不常用的端口,容易出現(xiàn)CPU內(nèi)存占用率高的情況。當(dāng)負(fù)荷過重的時候,CPU占用率可能過高。另外,系統(tǒng)在安裝完成后會默認(rèn)開啟不少啟動項,這些啟動項會消耗不少系統(tǒng)資源和內(nèi)存。
2、盡量不要安裝和運行多余的軟件
服務(wù)器上安裝過多多余的程序和軟件時也容易造成CPU內(nèi)存占用率高的情況。很多朋友喜歡在vps上安裝一些如QQ等軟件,少部分朋友有在vps上看視頻、玩游戲的習(xí)慣,這不經(jīng)意間就容易出現(xiàn)CPU占用率過高的問題。
3、安裝合適的殺毒軟件
服務(wù)器上要安裝合適服務(wù)器使用的殺毒軟件,因為一些軟件并不適合服務(wù)器使用,如360等,這些殺毒軟件會有一些隨時監(jiān)控功能,會隨時執(zhí)行掃描任務(wù),這樣會額外增加系統(tǒng)的負(fù)擔(dān),容易導(dǎo)致CPU占用率過高的情況出現(xiàn),嚴(yán)重的甚至?xí)?dǎo)致系統(tǒng)崩潰,所以有朋友安裝360后會發(fā)現(xiàn)服務(wù)器會明顯變卡,服務(wù)器上建議安裝安全狗殺毒軟件。
4、設(shè)置應(yīng)用程序池的回收時間
應(yīng)用程序池的默認(rèn)回收時間是29個小時,這個一般不是很好設(shè)置,有時候會出現(xiàn)內(nèi)存無法釋放的情況,導(dǎo)致CPU內(nèi)存占用過高,所以建議設(shè)置一下應(yīng)用程序池的回收時間,把回收時間縮小,這樣可以及時釋放內(nèi)存。
5、提高vps安全性
當(dāng)服務(wù)器受到病毒或木馬攻擊的時候,CPU也會出現(xiàn)占用率過高的情況,要預(yù)防出現(xiàn)服務(wù)器CPU占用率過高的情況,用戶朋友要做好服務(wù)器的安全工作,提高安全性,避免經(jīng)常出現(xiàn)受黑客攻擊的情況。