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

2022-07-25 23:51:14 字數 1603 閱讀 1447

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

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

​    ​舉個例子來說,對遊戲來說單純的併發登陸場景在整個線上環境中的佔比可能並不大(新開服等特殊情況除外),相反「登陸-開始戰鬥-結束戰鬥」、不同使用者執行不同動作這種「混合模式」佔了更大的比重。所以如何從實際環境中提煉出具體的場景比重,並且把這種比重轉化成實際壓力是乙個重要的關注點。

​    ​(2) 產生壓力之後,通常我們可以拿到tps、響應時延等效能資料,那麼如何定位效能問題呢?    ​    ​    ​    ​tps、響應時延只能告訴你伺服器是否存在問題,但不能幫助你定位問題。這些表面背後是整個後台處理邏輯綜合作用的結果,這時候可以先關注系統的cpu、記憶體、io、網路,對比在tps、時延達到瓶頸時這些系統資料的情況,確定效能問題是系統哪一部分造成的,然後再回到**的邏輯中逐個優化這些點。

​    ​(3) 當伺服器的整體效能就可以相對穩定下來,這時候就需要對自己伺服器的承載能力有乙個預估,通過產生真實壓力、對比系統資料,大致可以對單套系統的處理能力有個真實的評價,然後結合業務規模配置伺服器數量。

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

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

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

​    ​舉個例子來說,對遊戲來說單純的併發登陸場景在整個線上環境中的佔比可能並不大(新開服等特殊情況除外),相反「登陸-開始戰鬥-結束戰鬥」、不同使用者執行不同動作這種「混合模式」佔了更大的比重。所以如何從實際環境中提煉出具體的場景比重,並且把這種比重轉化成實際壓力是乙個重要的關注點。

​    ​(2) 產生壓力之後,通常我們可以拿到tps、響應時延等效能資料,那麼如何定位效能問題呢?    ​    ​    ​    ​tps、響應時延只能告訴你伺服器是否存在問題,但不能幫助你定位問題。這些表面背後是整個後台處理邏輯綜合作用的結果,這時候可以先關注系統的cpu、記憶體、io、網路,對比在tps、時延達到瓶頸時這些系統資料的情況,確定效能問題是系統哪一部分造成的,然後再回到**的邏輯中逐個優化這些點。

​    ​(3) 當伺服器的整體效能就可以相對穩定下來,這時候就需要對自己伺服器的承載能力有乙個預估,通過產生真實壓力、對比系統資料,大致可以對單套系統的處理能力有個真實的評價,然後結合業務規模配置伺服器數量。

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

apache bench做web壓力測試詳解

apache bench 的介紹 戳這裡 apache bench 的官網 戳這裡 使用步驟 2 cmd下安裝相關服務 httpd k install 3 開始 執行 services.msc 確定 在windows服務列表找到apache類似的 說明服務安裝成功,右鍵選擇啟動服務。4 注意 修改埠...

如何用Jmeter做壓力測試

jmeter是乙個效能測試工具,同loadrunner類似,他功能較多,我們常用的功能是用jmeter模擬多瀏覽器對 做壓力測試。我們一般的 在進入業務功能前先需登入,然後才能訪問業務功能。下面介紹如何用jmeter登入系統再對主業務做壓力測試。1.執行jmeter 2.左邊樹將出現 測試計畫 工作...

如何使用ab做介面壓力測試

壓力測試是通過不斷向被測系統施加 壓力 測試系統在壓力情況下的效能表現,考察當前軟硬體環境下系統所能承受的最大負荷並幫助找出系統瓶頸所在,也就是我們可以模擬巨大的工作負荷以檢視應用程式在峰值使用情況下如何執行操作。壓力 負載 效能測試之間的區別壓力測試 stresstesting 也稱為強度測試,通...