獨(dú)享云虛擬主機(jī)與共享云虛擬主機(jī)出現(xiàn)耗資源cpu跑滿,或者因?yàn)楹馁Y源被關(guān)停。
問題原因:
1、程序出現(xiàn)死循環(huán)。
2、程序有嵌套查詢。
3、采用access數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)較大。
4、數(shù)據(jù)庫(kù)索引較差。
以上問題都會(huì)引起服務(wù)器資源浪費(fèi),甚至耗資源異常情況。
解決方法:
1、出現(xiàn)死循環(huán)很多情況下是因?yàn)槌绦蛉鄙俦匾臋z測(cè)和判斷條件導(dǎo)致,這種情況需網(wǎng)站開發(fā)對(duì)站點(diǎn)程序的代碼進(jìn)行檢查和完善;
2、嵌套查詢會(huì)造成數(shù)據(jù)庫(kù)的查詢量呈指數(shù)級(jí)上升,導(dǎo)致一個(gè)程序的效率非常低,將程序代碼改為連表操作,查詢數(shù)據(jù)庫(kù)的次數(shù)會(huì)少很多,并且在設(shè)計(jì)數(shù)據(jù)庫(kù)的時(shí)候應(yīng)該將表的字段建立索引,否則連表查詢的時(shí)候性能會(huì)差很多。(連表操作+建立索引);
3、如果采用access數(shù)據(jù)庫(kù),當(dāng)數(shù)據(jù)庫(kù)的容量比較大(比如超過 100M 以上),性能就可能會(huì)出現(xiàn)問題,所以訪問量大的網(wǎng)站一般都采用 sqlserver、mysql、oracle 等性能比較高的數(shù)據(jù)庫(kù)引擎。
4、一個(gè)表至少有一個(gè)主鍵和N個(gè)外鍵,一般主鍵作為表的唯一標(biāo)識(shí)。當(dāng)檢索數(shù)據(jù)時(shí),如果以主鍵的值來(lái)進(jìn)行查找的話效率會(huì)比較高,而一些標(biāo)志性的字段,如產(chǎn)品表的產(chǎn)品所屬分類、用戶表的用戶等級(jí)等,如果在程序中經(jīng)常要用到這些字段來(lái)進(jìn)行檢索數(shù)據(jù),那么一般應(yīng)該為這些字段建立索引,這樣檢索數(shù)據(jù)的時(shí)候性能會(huì)好很多;