網站的高性能架構---Web前端性能優化

  • 網站性能測試
  1. 不一樣視角下的網站性能

  用戶視角的網站性能:從用戶角度,網站性能就是用戶在瀏覽器上直觀感覺到的網站響應速度.用戶的感覺時間包括用戶計算機和網站服務器通訊的時間、網站服務器處理請求時間、用戶計算機瀏覽器構造請求和解析響應數據的時間。前端

 

  開發人員視角的網站性能:開發人員關注的主要是應用程序自己及其相關子系統的性能,包括響應延遲、系統吞吐量、併發處理能力、系統穩定性等技術指標。瀏覽器

  運維人員視角的網站性能: 運維人員更關注基礎設施性能和資源利用率。緩存

  2.性能測試指標安全

      響應時間:指應用程序執行一個操做須要的時間,包括從發出請求開始到收到最後響應數據所須要的時間。性能優化

        併發數:指系統可以同時處理請求的數。服務器

        吞吐量:指單位時間內系統處理請求的數量。網絡

        性能計數器:它是描述服務器或操做系統性能的一些指標數據。包括System Load、對象與線程數、內存使用、CPU使用、磁盤與網絡I/O等指標。併發

  3.性能測試方法負載均衡

        性能測試是一個總稱,具體可細分爲性能測試、負載測試、壓力測試、穩定性測試。運維

        性能測試:以系統設計初期規劃的性能指標爲預期目標,對系統不斷施加壓力,驗證系統在資源可接受的範圍內,是否達到性能預期。

        負載測試:對系統不斷地增長請求以增長系統壓力,直到系統的某項或多項性能指標達到安全臨界值。

        壓力測試:超過安全負載的狀況下,對系統繼續施加壓力,直到系統崩潰或不能再處理任何請求,以此得到系統最大壓力承受能力。

        穩定性測試:被測系統在特定硬件、軟件、網絡環境下,給系統加載必定業務壓力,使系統運行一段較長時間,以檢測系統是否穩定。

 

 

 

  4.性能優化策略

    性能分析

 

  性能優化:定位產生性能問題的具體緣由後,就須要進行性能優化。

  • Web前端性能優化

  1.瀏覽器訪問優化

  (1).減小http請求.在服務器端,每次Http請求都須要啓動獨立的線程去處理,這些通訊和服務的開銷都很昂貴,減小HTTP請求的數目可有效提升訪問性能跟。減小HTTP請求的主要手段是合併CSS、合併Javascript、合併圖片。

  (2).使用瀏覽器緩存.將靜態文件緩存在瀏覽器中,能夠極好的改善性能。

  (3).啓用壓縮.在服務器端對文件進行壓縮,在瀏覽器端對文件進行解壓縮,能夠有效減小通訊傳輸的數據量。可是壓縮對服務器和瀏覽器產生必定的壓力,在通訊寬帶良好,而服務器資源不足的狀況下要權衡考慮。

      (4).CSS放在頁面最上面、Javascript放在頁面最下面

   (5).減小Cookie傳輸.一方面,Cookie包含在每次請求和相應中,太大的Cookie會嚴重影響數據傳輸,所以儘可能減小Cookie中傳輸的數據量。另外一方面,對於某些靜態資源訪問,發送Cookie沒有意義,能夠考慮靜態資源使用獨立域名訪問,避免請求靜態資源時發送Cookie,減小Cookie傳輸次數。

  2.CDN加速

 

4.2.3反向代理

       方向代理位於網站機房一側,代理系統服務器接收HTTP請求。

 

      反向代理服務器也具備保護網站安全的做用,來自互聯網的訪問請求都必須通過代理服務器,至關於在Web服務器和可能的網絡攻擊之間創建了一個屏障。反向代理服務器也能夠經過配置緩存功能加速Web請求,靜態內容被緩存在反向代理服務器上,當用戶再次訪問靜態內容是時,就能夠直接從反向代理服務器返回。此外,反向代理也能夠實現負載均衡的功能,而經過負載均衡構建的應用集羣能夠提升系統整體處理能力,進而改善網站高併發狀況下的性能。

相關文章
相關標籤/搜索