2017-03-03 19 views
0

我目前的設置使用負載生成器測試時是JMeter的腳本,每個負載生成器200個用戶(使用AWS雲)我有10個發電機組(2000線)。的JMeter - 爲每個線程不同的IP ADDRES雲

在SET UP,我們有一個負載平衡器,其做了循環賽,但是負載生成有時餘額和其他時候,它使用一個或兩個應用服務器更然後其他(共10個)。在現實生活環境中,我們會讓每個線程使用不同的IP地址,因此他們會平衡正確。

是否有每個線程都有自己的IP地址。 (目前每個負載生成器都有自己的IP地址)

我需要這個來處理我當前的設置。任何想法歡迎。

JMeter的版本2.13或3.1

+0

有用的信息https://www.blazemeter.com/blog/using-ip-spoofing-simulate-requests-different-ip-addresses-jmeter –

回答

0

既然你有10個不同的IP地址10個不同的負載生成器,負載平衡器後面的10臺應用服務器,我預計如果負載平衡器來分配每個負載生成一個應用程序你假設是正確的。

你可能有:

  • 負載均衡器配置錯誤,這會導致所有的客戶植根於單個應用服務器(粘性會話?),
  • 或負載測試腳本配置錯誤(動態參數沒有處理正確嗎?)導致所有用戶使用相同的登錄/會話,這會導致負載均衡器將它們發送到同一個應用程序服務器。

我將首先通過監視應用程序服務器和負載平衡器與一個負載生成器來查看用戶是否都被髮送到同一個應用程序服務器。然後嘗試使用2個負載生成器(使用不同的IP),以查看是否有2個應用程序服務器正在被命中。

一些付費工具支持infrastructure monitoring。您可以使用免費賬戶並在多個地區模擬測試(以獲得多個IP)以找出答案。

其他資源:

也有免費的監控工具,如Zabbix可以在您的自定義JMeter的AWS設置的並聯使用。

0

首先,確保你的HTTP請求設置不同的源地址,檢查出http://blog.milamberspace.net/index.php/2009/12/03/changer-ladresse-ip-source-dune-requete-http-lors-dun-test-avec-jmeter-549.html文章以獲取更多信息。

此外,它可能是由於操作系統或JVM緩存你的DNS請求的,特別是如果你的應用程序位於後面的ELB

請你務必添加DNS Cache Manager到您的測試計劃,以便每個JMeter的線程將解決底層IP它自己的地址。見The DNS Cache Manager: The Right Way To Test Load Balanced Apps文章更詳細的解釋。

0

爲避免此問題,您需要確保您使用的負載生成器的總數是您Web服務器數量的倍數。讓我們說你的應用程序有3個Web服務器。您可以使用3/6/9/12負載發生器,在所有負載之間均勻分配負載。你不能使用4/7/10等。如果你這樣做,如果你正在使用粘性會話,你將總是看到去某些Web服務器的請求比其他Web服務器要多。

相關問題