2017-05-19 102 views
-1

我正在測試2個網站,我也做了3例相同。第一種情況有3個用戶,然後是10和15.當我觀察到吞吐量正在增加。但我的疑問是,我必須獲得第一個用戶的最大吞吐量,對嗎?我沒有得到這樣的結果。我對所有情況都使用了斜坡加0。你們能否告訴我爲什麼我沒有獲得第一例的最大吞吐量?吞吐量價值不如預期

回答

1

你的假設是錯誤的,在理想世界應該是這樣的:

  • 3用戶 - 你得到X的吞吐量(即每秒10個請求)
  • 10個用戶 - 你應該得到X * 3吞吐量(即每秒30個請求)
  • 15個用戶 - 你應該得到的X * 5 thourhgput(即每秒50名的請求)

較多的併發用戶 - >吞吐量更高,所有情況下的響應時間應該相同。

這意味着無論是否有3個或15個併發用戶,您的應用程序都可以很好地擴展並運行得足夠快。


在現實中的數字可能是不同的,你可以到達,當你增加併發用戶數和吞吐量的數點保持相同的響應時間增加。這被稱爲bottleneck,發現這些瓶頸和確定根本原因是performance testing的主要思想。

所以你應該逐漸增加負載並同時觀察throughput and response time metrics。當吞吐量停止增加並且響應時間開始增加時 - 您有瓶頸,您需要調查原因並報告缺陷。

也不要忘記其他的測試類型,如Soak TestingStress Testing,這些技術允許找memory leaks,並確定saturation point,看到Why ‘Normal’ Load Testing Isn’t Enough文章以瞭解詳情。

+0

感謝您的快速回復,但我還沒有找到根本原因。你能請精心準備嗎? –

+0

我不知道你的應用程序有什麼問題。首先檢查受測試應用程序上的資源消耗情況,您可以使用[JMeter PerfMon Plugin](https://www.blazemeter.com/blog/how-monitor-your-server-health-performance-during -jmeter-load-test) - 可能是因爲缺少RAM或CPU過載。如果沒有 - 用[profiling tool telemetry](https://en.wikipedia.org/wiki/Profiling_(computer_programming))重新運行你的測試來檢查最耗費資源和最耗時的方法,它可能不夠有效算法或數據庫查詢緩慢。 –

0

隨着用戶數量的減少,我們無法達到最高tps,吞吐量隨着用戶負載的增加而增加,並且達到一定數量的用戶吞吐量開始減少。不要認爲,如果用戶數量少,我們可以獲得最大的吞吐量。謝謝