影響性能指標有哪些?(學習記錄)

本文僅作爲學習記錄,非商業用途,侵刪,如需轉載需作者同意。

影響系統性能的指標有哪些?關鍵的環節有哪些?

一、域名DNS解析

在這裏插入圖片描述

提升域名DNS解析的方式:

DNS緩存和DNS預解析:

  • 增大域名的TTL值,增大DNS服務器緩存這個域名的時間。可以提升緩存命中率
  • 使用dns-prefetch標籤實現域名的預解析。瀏覽器在後臺把要使用DNS解析的請求提早解析

例如阿里cdn的預解析
在這裏插入圖片描述

二、首字節

HTTP是應用層協議,TCP是傳輸層協議。所以HTTP是基於TCP連接基礎上進行傳輸的,需要先建立TCP連接。

1、白屏時間

瀏覽器顯示HTML的順序是自上而下的,它的渲染順序也是自上而下的。
用戶輸入網址到看到第一個視覺標誌爲止,稱爲白屏時間。

在這裏插入圖片描述

白屏時間越長,用戶體驗越差。
縮短白屏時間方法:

  • 減少文件的加載體積:例如gzip算法來壓縮js,css,html文件及各種圖片資源的加載體積
  • 加快JavaScript的執行速度,或者根據自身業務場景使用懶加載等策略

2、瀏覽器響應時間

瀏覽器響應時間:瀏覽器發起API接口請求,到響應數據完成渲染的時間。
涵蓋了:網絡往返時延+服務器響應時間+響應數據完成渲染時間
主要是服務器響應時間佔了很大的一部分。

3、HTML下載和渲染

當服務器返回HTTP Response後,瀏覽器會陸續開始接受響應的數據,進行HTML的下載,渲染和顯示。

頁面展示還有2個重要指標:解析Dom樹時間和OnlOnLoad時間。
方法:

  • 加快HTML的下載和解析的速度
  • 優化JavaScript和css文件和結構

首屏時間:用戶輸入URL按回車,到看到第一個頁面的時間
在這裏插入圖片描述

響應時間的:2 5 10 原則
在這裏插入圖片描述

三、服務器響應

普通的路線如:用戶請求–>nginx–>tomcat

基礎設施指標

1、CPU利用率

  • 用戶態(user)
  • 系統態(sys)
  • 等待態(wait)
  • 空閒態(idle)

CPU超過80%可能就有問題了

2、內存利用率

內存達到100%可能也不是瓶頸,因爲內存中存放了緩存。

  • 主要衡量swap交換空間的利用率。
  • jvm是否有頻繁的FGC,如有則需要優化

3、數據庫

  • sql查詢時間
  • key buffer命中率
  • query cache命中率
  • table cache命中率

四、整體性能指標

  • 吞吐量:
    單位時間內系統處理的數據量的總和
    吞吐量反應了服務器的處理能力和承受壓力

  • 響應時間:
    API接口一次操作完成的時間:請求發送的時間+訪問等待的時間+服務處理的時間

TPS(Transactions Per Second):服務器每秒處理的事物數。衡量吞吐量的一個重要參數
QPS(Queries Per Second):一臺服務器每秒能夠對應的查詢次數,它是對一個特定的查詢服務器,在規定時間內處理多少流量的衡量標準

五、服務端性能優化

  • 架構層面
    配置升級,集羣優化,讀寫分離,分庫分表,服務拆分

  • 網絡層面
    網絡專線,BGP選路,CDN優化

  • 後端層面
    動靜分離,異步優化,並行優化,緩存優化,減少次數,壓縮優化,鎖優化,配置優化

在這裏插入圖片描述

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章