<bdo id="4g88a"><xmp id="4g88a">
  • <legend id="4g88a"><code id="4g88a"></code></legend>

    項目性能優化—性能優化的指標、目標

    項目性能優化—性能優化的指標、目標

    性能優化的終極目標是什么

    性能優化的目標實際上是為了更好的用戶體驗:

    一般我們認為用戶體驗是下面的公式:

    用戶體驗 = 產品設計(非技術)+ 系統性能 ≈ 系統性能 = 快

    那什么樣的體驗叫快呢?

    3秒定理

    一般我們認為網站頁面的加載速度在3秒以內就可以稱作合格了,加載速度越趨近于0,越快。

    3秒定理:Strangeloop在對比了眾多網站,并對其性能進行分析之后得出了一個著名的3秒定理,當網站頁面加載速度超過3秒后,57%的訪客會離開這個網站。

    如果想讓我們的系統快起來,就要做性能調優。

    項目性能優化

    以下可以做為優化的標準:

    • 前端工程師:首屏時間、白屏時間、可交互時間、完全加載時間;
    • 移動端工程師:端到端響應時間、Crash率、內存使用率、FPS;
    • 后端工程師:RT、TPS、并發數。
      • 影響因素1:數據庫讀寫、RPC、網絡IO、邏輯計算復雜度、緩存
      • 影響因素2:JVM[Throughput吞吐量、Footprint訪存足跡、Latency延遲]

    影響性能的關鍵要素

    • 產品設計:產品邏輯、功能交互、動態效果、頁面元素
    • 基礎網絡:網絡=連接介質+計算終端
    • 代碼質量&架構
    • 移動端環境:設備類型&性能、網絡
    • 硬件及云服務:服務器硬件等

    我們怎么去分析性能因素呢,就是既不要去做過度的優化,也不要讓某個內容作為短板。

    我們怎么找到系統的短板在哪里呢?就是需要進行壓力測試。

    壓力測試

    什么是壓力測試

    壓力測試:壓力測試是針對特定系統或者組件,為要確認其穩定性而特意進行的嚴格測試。會讓系統在超過正常使用條件下運作,然后再確認其結果。

    實際上就是對系統不斷施加壓力,來預估系統負載能力的一種測試。

    什么時候做壓測

    一般而言,只要在系統基礎功能驗證完成、系統趨于穩定的情況下,才會進行壓力測試。

    壓測目的

    1. 當負載逐漸增加時,觀察系統各項性能指標的變化情況是否有異常;
    2. 發現系統的性能短板,進行針對性的性能優化;
    3. 判斷系統在高并發情況下是否會報錯,進程是否會掛掉;
    4. 測試在系統某個方面達到瓶頸時,粗略估計系統性能的上限;

    壓測的指標

    指標 含義
    響應時間(RT) 是指系統對請求作出響應的平均時間,對于單用戶系統,響應時間可以很好地度量系統的性能。
    吞吐量(Throughput) 是指系統在單位時間內處理請求的數量,每秒事務數TPS也算是吞吐量的一種
    資源利用率 CPU占用率、內存使用率、系統負載、網絡I/O
    并發用戶數 是指系統可以同時承載的正常使用系統功能的用戶的數量,用戶不同的使用模式會導致不同用戶在單位時間發出不同數量的請求。
    錯誤率 失敗請求占比,在測試時添加響應斷言,驗證不通過記為錯誤;若不添加,響應碼為非200即為錯誤。

    響應時間、并發用戶數、吞吐量、資源使用率存在一定關系,如下圖:

    響應時間、并發用戶數、吞吐量、資源使用率關系圖

    圖的解釋:

    線走勢:

    • 綠線:隨著用戶增長,資源利用率會提升;

    • 紫線:隨著用戶增長,吞吐量會上升,然后下降;

    • 藍線:隨著用戶增長,響應時間的變化趨勢;

    區域

    圖中有三個區域:輕負載區、重負載區、塌陷區。

    兩個橫坐標點

    第一條虛線的橫坐標:最優并發用戶數;

    第二條虛線的橫坐標:最大并發用戶數。

    posted on 2024-03-14 22:39  隨機的未知  閱讀(337)  評論(2編輯  收藏  舉報

    導航

    免费视频精品一区二区_日韩一区二区三区精品_aaa在线观看免费完整版_世界一级真人片
    <bdo id="4g88a"><xmp id="4g88a">
  • <legend id="4g88a"><code id="4g88a"></code></legend>