怎么做壓力測試


已經知道了什么是壓力測試,和壓力測試所需要關注的參數之后,剩下的內容就是着手做了,怎么開始呢?一個壓力測試的流程:

1 明確測試目標

2 制定測試計划

3 實施測試,收集參數

4 分析測試結果

5 給出優化方案

一  明確測試目標:如果是客戶的需求,那需要向客戶確認,有清楚的性能指標參數,測試時就是保證系統達到該指標並能良好運轉,即壓力測試。如果是自己的系統需要有一個評估,那就需要完整的得到該系統的幾個臨界點,拿到完整的性能曲線,從而來分析部署情況,即為性能測試。不管是哪個,知道了需求,才能制定計划。

性能測試的目標是發現重大的系統瓶頸。你可以想象一個系統由一系列的瓶頸組成;發現並改善一個瓶頸往往會在其他地方產生一個新的瓶頸。例如,我曾為一運行微軟Windows CE的器件部門工作。我們發現的第一大性能問題體現在某一具體硬件環境下的內存管理中。我們把問題分離出來,改善了內存分配的效率。爾后再次運行我們的測試,又找到了一個新的瓶頸,這次體現在網絡吞吐量上(throughput)。解決了這個問題后,我們接着又為下一個瓶頸改善而工作,然后再下一個,直到整個系統都達到了性能目標。要記住的是:關鍵在於要盡早訂立性能目標,否則你可能不知道什么時候該停止性能測試。

二 制定測試計划:確定使用什么工具,着重哪些參數,設置線程數,方法執行次數,執行時間,是否多個接口同時進行測試等等。

三 實施測試,收集參數:選一個施壓工具,來向部署好的服務發起高並發請求,同時關注和收集性能參數。這個是我們花費時間最多的地方。通常該階段需要反復執行,來得到想要的數據。通常來說,我們可以使用JMeter LR AB 自己寫多線程等各種方式,之后介紹一下JMeter。

四 分析測試結果:即根據上一節的參數介紹來進行參數分析

五 給出優化方案:如果是代碼邏輯耗費cpu,就優化算法;如果是redis等數據庫耗時,就增加節點,減少讀取,讀寫分離,使用內存等;如果是外在條件限制,則與外部們溝通問題,共同優化等等。

 


免責聲明!

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



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