網站建設TEL: 4006-3721-06     |   業務控制臺 |  返回首頁 | 
文章熱搜: 案例 HTTPS CDN 掛馬 網站被掛馬 FTP刪不掉 網站備案 正版網站 彈窗制作 優化排名
首頁 > 網站建設 > 網站空間 > 網站出現耗資源的原因及解決方法

網站出現耗資源的原因及解決方法

作者:wangjuan 來源:www.gouwanmei.com 時間:2020-5-18 14:29:48 點擊:

網站掛馬|耗資源|超流量|日志|木馬查殺|網站中毒|網站違法
4006-3721-06 / QQ:623431139
經常有人會問:我的網站是個很普通的網站,沒有多少訪問量,為什么還經常提示耗資源?是不是主機問題等。今天小編就這個問題給大家解答下:

1.什么是耗資源?

     耗資源即程序占用 CPU 及內存過多,是對資源的一種浪費。客戶使用虛擬主機時程序編寫的不合理、錯誤嚴重,造成服務器負載急劇上升,極大的影響了正常客戶的使用,就是耗資源(客戶程序故障)。耗資源(客戶程序故障)分為耗用 CPU 資源和內存資源兩種。
網站掛馬|耗資源|超流量|日志|木馬查殺|網站中毒|網站違法
2.什么原因導致的耗資源?

   .程序出現死循環

    在很多情況下,出現死循環是因為程序缺少必要的檢測和判斷條件導致,這種情況需網站開發者對站點程序的代碼進行檢查和完善。

    .程序有嵌套查詢

sql = "select * from a"
set rs = server.createobject("adodb.recordset")
rs.open sql,conn,1,1
while not rs.eof
      sql2 = "select * from b where fid=" & rs("id")
      set rs2 = server.createobject("adodb.recordset")
      rs2.open sql2,conn,1,1 '   //使用嵌套查詢,效率會出現下降
          while not rs2.eof
            response.write rs("id") & "=" & rs2("name")
            rs2.movenext
          wend
      rs.movenext
wend



    嵌套查詢會造成數據庫的查詢量呈指數級上升,導致一個程序的查詢效率非常低。若程序改為連表操作,查詢數據庫的次數會少很多,并且在設計數據庫的時候應該將b表的fid字段建立索引,否則連表查詢的時候性能會差很多,代碼示例如下所示。

<%
  sql = "select a.id ,b.name from a left join b on b.fid=a.id" '//使用連表操作,并用具體的字段名代替 *,程序是高效很多
  set rs = server.createobject("adodb.recordset")
  rs.open sql,conn,1,1
  while not rs.eof
     response.write rs("id") & "=" & rs("name")
     rs.movenext
  wend
%>
    .ACCESS數據庫的容量比較大
    如果網站采用ACCESS數據庫,當數據庫的容量比較大時(比如超過100M以上),性能就可能會出現問題,所以訪問量大的網站一般都采用SQL Server、MySQL、Oracle等性能比較高的數據庫引擎。

     .數據庫的索引設置問題
    一個表至少有一個主鍵和N個外鍵,一般主鍵作為表的唯一標識。當檢索數據時,如果以主鍵的值來進行查找的話效率會比較高,而一些標志性的字段,例如產品表的產品所屬分類、用戶表的用戶等級等,在程序中經常要用到這些字段來進行檢索數據。那么,一般應該給這些字段建立索引,這樣檢索數據的時候性能會好很多。

相關網站空間文章
視頻看后臺
網站空間熱門
網站空間推薦
網站制作 SAAS建站平臺 網站制作教學
  • 正版建站 © 2020 版權所有 All Rights Reserved.正版建站助力企業互聯網品牌營銷
  • 網址:www.784726.tw 聯系TEL:4006-3721-06,郵箱:csccsc@189.cn 京ICP備05034846號
  • 本頁面更新時間:2020-9-8
    贵州快三开奖推荐