我使用Jmeter來加載測試我的Web應用程序。我有兩個Web服務器,我們正在使用HAProxy來實現負載平衡。我所有的測試都運行良好,配置正確。我有三個jmeter遠程客戶端,所以我可以運行分發的測試。我面臨的問題是,我的所有jmeter請求都只能由其中一個Web服務器處理。出於某種原因,這不是平衡,我有很多時間和巨大的響應時間。我已經考慮了很多方法來使這些請求保持平衡,但目前我沒有運氣。有誰知道這種行爲的原因是什麼?如果您首先需要了解我的環境,請告訴我,我會提供答案。所有Jmeter請求只與一個服務器haproxy
1
A
回答
1
檢查你HAProxy的配置:什麼是它的負載平衡策略,如果沒有循環是基於IP源地址或其他一些信息,可能是經常會將3個遠程服務器
?
你確定負載平衡工作正常嗎?嘗試用瀏覽器進行測試首先,如果你能在響應添加有關Web服務器的一些信息來調試
檢查你的測試計劃:
你確定你沒有在你的地方請求硬編碼的jessionid?
你配置了多少個線程?
0
默認情況下,您的Jmeter腳本會檢查HTTP請求「使用KeepAlive」標頭選項。
保持活動是維護 客戶端和服務器之間的持續連接,從而防止斷裂 間歇的連接的報頭。也稱爲HTTP保持活動狀態,可將其定義爲 方法,以允許爲HTTP通信使用相同的TCP連接,而不是爲每個新請求打開新連接的 。
這可能會導致所有請求轉到同一臺服務器。只需取消選中並保存,停止腳本並重新運行。
相關問題
- 1. Grpc:只有一個服務器線程處理所有請求
- 2. 向haproxy中的默認服務器或其他服務器請求redispatch請求?
- 3. HAProxy - 從服務器停止提供服務請求
- 4. POST請求到一個REST服務器
- 5. .NET Remoting服務器只處理一個請求
- 6. 個人所有Web服務api的請求計數器
- 7. 「無法加載所請求的類」只在服務器
- 8. 請求頭字段添加到JMeter的web服務(SOAP)請求
- 9. WCF REST服務 - 將所有請求路由到一個操作
- 10. 只能向服務器發出一個請求而沒有失敗
- 11. 只打印最後一個服務器列表,我希望所有服務器
- 12. 請求與服務器響應DUPLICATE_REQUEST_ID
- 13. Jmeter發送HTTP請求到服務器的執行行爲
- 14. 所有後端服務器都必須啓動haproxy嗎?
- 15. Ajax調用服務器PHP只有時打印回請求
- 16. mvc web api只允許來自同一服務器的請求
- 17. Cassandra只有一個服務器
- 18. 負載只有一個服務器
- 19. jmeter捕獲所有請求和響應頭單個http請求觸發
- 20. 一次只有一個AJAX請求?
- 21. SQL - 多個請求中只有一個
- 22. 爲什麼我的簡單Jetty服務器一次只處理一個請求?
- 23. Laravel:HTTP請求到另一臺服務器
- 24. C#HttpClient服務器超時取消所有後續請求
- 25. 通過Node-Webkit中的代理服務器的所有請求
- 26. 實現HTTP服務器 - 是否必須響應所有請求?
- 27. NGINX將所有圖像請求路由到外部服務器
- 28. 如何讓Node.js服務器在Ubuntu上接受所有請求?
- 29. 是否有可能請求angularj服務器在nodejs服務器
- 30. Ruby/JRuby和WEBrick服務一次請求一個請求
我在辦公室網絡環境。根據代理服務器的IP是辦公室的外部IP(因此,我的3個遠程服務器的IP相同)。但是,負載均衡在瀏覽器中正常工作。測試計劃沒有任何硬編碼的cookies。我想知道是否有任何Jmeter配置我必須做?通過循環賽平衡,我可以得到相同的結果。 – 2012-08-16 20:32:29
使用瀏覽器測試時,您是否從用作遠程服務器的相同機器進行測試? haproxy基於ip或基於roundrobin的策略是什麼?你如何檢查瀏覽器的測試是否正常?你打開3個瀏覽器,每個瀏覽器都去不同的服務器? – 2012-08-16 20:40:54
是的。它現在用循環法進行工作。網絡管理員把它設置錯了,所以我之前曾提到過用循環法嘗試,但我並沒有真正這麼做。現在我有,它正在工作。非常感謝您的回覆! – 2012-08-16 20:43:26