回覆列表
  • 1 # 使用者356005395580

    一,確認伺服器硬體是否足夠支援當前的流量。

    二,最佳化資料庫訪問。伺服器的負載過大,一個重要的原因是CPU負荷過大,降低伺服器CPU的負荷,才能夠有效打破瓶頸。而使用靜態頁面可以使得CPU的負荷最小化。前臺實現完全的靜態化當然最好,可以完全不用訪問資料庫,不過對於頻繁更新的網站,靜態化往往不能滿足某些功能。快取技術就是另一個解決方案,就是將動態資料儲存到快取檔案中,動態網頁直接呼叫這些檔案,而不必再訪問資料庫,WordPress和Z-Blog都大量使用這種快取技術。如果確實無法避免對資料庫的訪問,那麼可以嘗試最佳化資料庫的查詢SQL.避免使用Select *from這樣的語句,每次查詢只返回自己需要的結果,避免短時間內的大量SQL查詢。

    三,禁止外部的盜鏈。外部網站的圖片或者檔案盜鏈往往會帶來大量的負載壓力,因此應該嚴格限制外部對於自身的圖片或者檔案盜鏈,好在目前可以簡單地透過refer來控制盜鏈,Apache自己就可以透過配置來禁止盜鏈,IIS也有一些第三方的ISAPI可以實現同樣的功能。當然,偽造refer也可以透過程式碼來實現盜鏈,不過目前蓄意偽造refer盜鏈的還不多,可以先不去考慮,或者使用非技術手段來解決,比如在圖片上增加水印。

    四,控制大檔案的下載。大檔案的下載會佔用很大的流量,並且對於非SCSI硬碟來說,大量檔案下載會消耗CPU,使得網站響應能力下降。因此,儘量不要提供超過2M的大檔案下載,如果需要提供,建議將大檔案放在另外一臺伺服器上。

  • 中秋節和大豐收的關聯?
  • 請你寫一段話用具體事例來證明科學的靈感絕不是坐等可以等來的這一觀點?