性能測試流程、優化、指標


1、性能測試的流程

1、確定性能測試的目標

之前做的壓測性能標准、產品說明書的性能需求部分、運營人員提出的性能指標、通過生產環境換算出的性能指標等 

(1)接口響應時間不能超過3秒(每個接口的響應時間)

(2)需要達到的tps為1000(每秒鍾處理的事物數)

(3)服務器cpu以及內存使用率小於75%

 

2、執行前的准備工作

(1)了解系統架構:所用到的接口服務器,應用服務器,緩存服務器,數據庫服務器等

(2)測試數據的准備:用戶數據、商品數據、訂單數據等

(3)接口調試:測試單個接口是否正常

(4)壓測工具的選擇與壓測腳本的編寫與調試

 

3、執行壓測以及監控各項指標

(1)執行壓測腳本:通過在被測系統上不斷增加壓力,直到被測試系統的性能滿足生產性能的要求

(2)系統服務監控:如服務器,數據庫,cpu,內存,數據庫連接數,tps, error, 平均值,90%百分位,等是否滿足性能指標要求

搭建監控軟件或平台,可點擊

-> 性能監控 <-

合集進行查閱,總有一款適合你

 

4、性能調優

(1)參與人員:測試、開發、運維、DBA等

(2)基於上一步的監控數據,對性能頻頸進行定位、分析,優化

 

5、性能回歸測試

(1)再次執行壓測腳本

(2)系統服務監控數據收集

(3)監控數據分析,直到滿足性能指標;如不滿足則再次進行調優,之后性能回歸測試執行

 

6、編寫測試報告

(1)壓測概要,涉及到的測試工具,各種指標的介紹

(2)壓測服務器信息,cpu,內存,操作系統,用途

(3)壓測目的,是否達到性能要求

(4)壓測方案,不斷對系統施加壓力,直到滿足性能的要求

(5)壓測結果

 

注意點:

(1)測試執行時,執行多次,取平均結果更為准確

(2)單機並發不夠時,采用多機分布式並發,多機分布式不夠采用阿里雲等進行壓測

(3)測試過程,一定要盡可能模擬實際應用場景

 

2、性能的優化

優化總結(參考)

1、架構的升級(增加reads緩存)

(1)注冊接口:獲取卡號后,暫存緩存服務器,並進入MQ隊列,MQ隊列取出后,保存數據庫

(2)查詢接口:原來讀取的mysql數據庫,改成讀取的redis(緩存)

 

2、開發代碼

(1)代碼的邏輯優化

(2)接口返回值的優化,刪除多余的返回字段

 

3、數據庫

(1)SQL優化(加索引),查詢方式

(2)SQL語句優化

 

4、硬件配置

(1)增加服務器、數據庫cpu

(2)橫向擴展增加服務器

 

5、服務器的部署

(1)資源的分配:把接口服務器上部署的應用挪到其他服務器

(2)根據服務器提供的服務類型不同,分為文件服務器、數據庫服務器、應用程序服務器、WEB服務器等

 

6、服務器負載不均衡

(1)由原來的的擇優分配機制改成輪詢方式

(2)選擇一台最優的服務器鏡像拷貝到其他服務器,保證每台服務器對應的程序以及部署都是一樣的

 

7、日志級別

(1)減少了日志量由原來的info改成error(日志級別越低輸出的日志內容就越多,對系統性能影響很大)

(2)異步輸出比同步輸出性能高

 

3、性能測試關注的指標

1、服務器、數據庫等,cpu、內存的使用率,磁盤I/O,網絡帶寬

2、並發用戶數,在線用戶數,

3、每個接口響應時間,平均響應時間

4、吞吐量:tps

5、事務成功率,超時錯誤率

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM