2016-11-28 38 views
-1

我們正在進行Web負載測試,以檢查我們的Web API如何在特定的QPS(每秒查詢)上執行。Web負載測試,不同客戶端線程數之間的差異

我們有一個工具來發送請求到我們的Web API。

我的問題是, 對於給定的QPS,比如說100,客戶端線程數和每個線程請求的不同組合,Web API端有什麼不同。

例如,

  • 1線程,每秒每線程100個請求
  • 10個線程,每秒10所請求的每個線程
  • 20個線程,每秒每螺紋5名的請求。

Web API服務器端容量的任何區別?

回答

0

從服務器端應該沒有區別,但是你的方案可能不適用。我不知道你的「工具」的細節,但通常web API意味着HTTP transport和HTTP是「請求/響應」協議,因此如果你使用1個線程,你將不能發送下一個請求,直到你收到來自服務器的響應。

正常的「良好」習慣是模擬儘可能接近現實的負載,因此您需要模仿Web API的實際使用情況,否則您的負載測試沒有意義。因此,我建議重新考慮您的加載模式,以表示真實用戶或使用Web API的應用盡可能接近。有關一些見解,請參見Testing SOAP/REST Web Services Using JMeter指南。

0

線程正在模擬一個真實的用戶,因此,假設當您設置10個線程時,每個線程每秒10個請求意味着10個用戶每秒發出10個請求/秒。

性能工具基本上是模擬用戶點擊網站,因此每次點擊都代表一個請求。

由於每個請求都會使用API​​,這意味着每個請求都會在服務器上產生負載。如果您發現測試運行時請求的時間更長,那麼這意味着您正在達到環境容量的限制。如果每秒用戶數和請求數很低,那麼您需要調整代碼和查詢以獲得儘可能快的響應。一旦你在代碼方面盡一切可能,你可能需要一個更強大的服務器,這取決於你的項目需求。

這些測試的目標是確定您的網站是否能夠滿足所需數量的用戶。

+0

歡迎來到StackOverflow並感謝您的幫助。但是,您的回答似乎解釋了性能測試工具的用途以及在速度不理想時可能採取的措施。然而,OP詢問了分配100個不同線程數的差異。你的答案似乎沒有討論這個具體問題,因此似乎沒有真正回答這個問題。 – Yunnosch

相關問題