如何正確做 Web端壓力測試?


   ​    ​一個完整的壓力測試需要關注三個方面:如何正確產生壓力、如何定位瓶頸、如何預估系統的承載能力。

 

    ​    ​(1) 如何產生壓力:產生壓力的方法有很多,通常可以寫腳本產生壓力機器人對服務器進行發包和收包操作,也可以使用現有的工具(像jmeter、LoadRunner這些),所以說產生壓力其實並不難,難點在於產生的壓力是不是真實地反映了實際用戶的操作場景。

    ​    ​舉個例子來說,對游戲來說單純的並發登陸場景在整個線上環境中的占比可能並不大(新開服等特殊情況除外),相反“登陸-開始戰斗-結束戰斗”、不同用戶執行不同動作這種“混合模式”占了更大的比重。所以如何從實際環境中提煉出具體的場景比重,並且把這種比重轉化成實際壓力是一個重要的關注點。
    ​    ​(2) 產生壓力之后,通常我們可以拿到TPS、響應時延等性能數據,那么如何定位性能問題呢?    ​    ​    ​    ​TPS、響應時延只能告訴你服務器是否存在問題,但不能幫助你定位問題。這些表面背后是整個后台處理邏輯綜合作用的結果,這時候可以先關注系統的CPU、內存、IO、網絡,對比在tps、時延達到瓶頸時這些系統數據的情況,確定性能問題是系統哪一部分造成的,然后再回到代碼的邏輯中逐個優化這些點。
    ​    ​(3) 當服務器的整體性能就可以相對穩定下來,這時候就需要對自己服務器的承載能力有一個預估,通過產生真實壓力、對比系統數據,大致可以對單套系統的處理能力有個真實的評價,然后結合業務規模配置服務器數量。

    ​    總的來說,​通過產生真實壓力來發現問題、結合系統性能來解決問題 。

 


        長按二維碼識別關注,您的支持是我們最大的動力。       

        公眾號:測試夢工廠

        QQ一群:300897805

  


免責聲明!

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



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