Wie kann threads und die Anzahl der Iterationen, die Auswirkungen testen, und was ist JMeter max. thread limit
-
Würden Sie mir bitte sagen, die max-Grenze nicht. der threads, die ich verwenden können, JMeter 2.4 für die Durchführung von Lasttests?
-
Ist, gibt es einen Unterschied in der Einnahme von allen threads, die in eine einzelne Schleife oder weniger keine. threads und initialisieren Schleife zu erreichen, die gleiche keine. der Nutzer/threads?
Beispiel:
No. of threads=500
Ramp up=1000
Loop=1
ob es dasselbe ist wie
No. of threads=50
Ramp up=100
Loop=10
oder gibt es einen Unterschied in Bezug auf das Ergebnis?
- gute Frage sollte eine Antwort auswählen!
- Hallo, könnten Sie annehmen, die meisten von Ihnen positiv bewertet werden version, die ist die richtige Antwort ? es würde anderen helfen. Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die maximale Anzahl der threads wird bestimmt durch eine Menge von Faktoren, siehe diese Antwort https://stackoverflow.com/a/11922239/460802
Gibt es einen großen Unterschied in dem, was Sie vorschlagen.
In der Theorie bekommen Sie die gleiche Anzahl von Ergebnissen (500), aber Sie kommen auf den server in eine sehr andere Art und Weise.
Maximale Anzahl der Benutzer hängt von Ihrem Betriebssystem,freier RAM und Anbindung. Win XP ist beschränkt auf 3000 Prozesse zur gleichen Zeit. Unter Linux ist mehr als 3000, aber ich weiß nicht, wie viel. Seien Sie vorsichtig, dass Sie die server testen und wenn Sie beginnen, 3000 Threads auf Ihrem Rechner, die viele Ressourcen erfordern und der test wird nicht real. Ich pref-tarif zu starten maximal 300 Benutzer pro Maschine. Wenn Sie möchten, erhöhen Sie die Anzahl der Benutzer als verteiltes testen (verwenden Sie mehr Maschine als DoS-Angriff).
In der Theorie ist die gleiche Anzahl von Wunsch, sondern die Zeit-Komplexität ist nicht das gleiche.
1: es kommt natürlich viel auf den Rechner, auf dem JMeter, aber wenn Laufleistung zählt, kann ich Ihnen einige Hinweise. JMeter ermöglicht die Ausführung von mehreren Prozessen in der gleichen box, und es ist in der Regel ziemlich zuverlässig die Erzeugung von bis zu 200 Fäden pro JMeter Instanz. Wenn Sie mehr benötigen, würde ich empfehlen mehrere JMeter-Instanzen. Eine moderne Maschine mit einigen Optimierungen kann einfach erzeugen 500 1000 threads. Mit Linux werden Sie wahrscheinlich benötigen, um erhöhen Sie die maximale Anzahl von Datei-Deskriptoren (siehe hier).
Hilft es, viel zu laufen, JMeter ohne GUI, schreiben Bericht/Grafik-Daten in eine Datei gerendert werden später. Sie müssen auch darauf achten, Ihre Vernetzung Einschränkungen. Es wäre einfach für einen server in einem Gbit-Netzwerk zum generieren von einigen tausend Anfragen, aber ein laptop teilen sich eine 54-Mbps-router wäre viel mehr begrenzt. Versuchen Sie, teilen Sie Ihre eigentliche Verbindung zu dem server von der Größe der Anforderungen, und dann werden Sie wissen, wenn die Bandbreite begrenzen Sie. Achten Sie besonders auf JMeter-Konfiguration zu laden oder nicht referenzierte Dateien in eine HTML-Antwort.
Hoffe, ich konnte helfen.
2: Es ist genau das, was BlackGaff erklärt:
"500 Gewinde, Loop 1" Bedeutet, dass 500 threads ZUR GLEICHEN ZEIT tun, wird die Schleife EINMAL.
"50 threads, loop 10" Bedeutet, dass nur 50 threads ZUR GLEICHEN ZEIT tun, wird die Schleife ZEHN MAL.
Dies ist sehr Häufig stecken hier nach der Erstellung eines Szenarios und Testfälle, die wir ausführen müssen um mit JMeter und wir haben uns fix auf den Wert, wie viele user oder threads sind zulässig zur Verwendung in JMeter Thread-Gruppe. Wir wollen nicht Gas entweder unsere Last-generator oder unsere JMeter Instanz.Also im Grunde ist es erforderlich, tweaking in beiden Fällen.Andernfalls ist Die Ausgabe der test wertlos und wir verlieren Stunden unserer Zeit. So, hier sind die Dinge, die wir berücksichtigen müssen:-
Bedeutet es standardmäßig zugewiesenen heap-Größe mindestens 512 MB, maximal 512 MB. Konfigurieren Sie es wie pro Ihre eigene PC-Konfiguration. Halten Sie im Verstand, OS benötigen auch eine gewisse Menge an Speicher, also nicht zuordnen, Sie alle physischen RAM.
Bedeutet dies, Speicher erhöht sich diese rate. Sie sollten vorsichtig sein, weil, wenn Sie Ihre Last generation ist sehr hoch am Anfang, das könnte erhöhen müssen. Denken Sie daran, es wird brechen Sie Ihre heap space im inneren JVM, wenn der Bereich zu breit. Wenn dem so ist, Garbage Collector muss härter arbeiten, um aufzuräumen.
JMeter ist von der Java-GUI-Anwendung. Es hat auch die nicht-GUI-edition ist weniger ressourcenintensiv ist (CPU/RAM). Wenn wir mit JMeter in nicht-GUI-Modus, es verbraucht weniger Ressourcen und wir können mehr laufen-thread.
Deaktivieren Sie ALLE Zuhörer: Während der Test Ausgeführt wird. Sie sind nur für das Debuggen und verwenden Sie zur Gestaltung Ihrer gewünschten Skript.
Zuhörer sollte deaktiviert werden während des Lasttests. Aktivieren Sie verursacht zusätzliche Kosten, was den Verbrauch wertvoller Ressourcen, die erforderlich sind weitere wichtige Elemente Ihres Tests.
Immer versuchen, die Up-to-date-software. Halten Sie Ihre Java und JMeter aktualisiert.
Vergessen Sie nicht, dass, wenn es um die Speicherung von Anfragen und Antwort-Header, der Geltendmachung Ergebnisse und response-Daten kann verbrauchen eine Menge Speicher!!! Also versuchen Sie nicht zum speichern dieser Werte auf JMeter, es sei denn, es ist unbedingt erforderlich.
So, in Zusammenfassung, wenn keine Hörer sind in JMeter script, keine überwachung im Innenbereich ausführen JMeter-server, Netzwerk-overhead, Barrieren und JMeter-Skripte optimiert werden, dann ist hier eine grobe Berechnung:
Haben Sie zu schätzen, Ihre Anzahl gleichzeitiger user/thread (aktive threads) nur in Bezug auf Ihr Szenario laden.
Außerdem müssen Sie überwachen, ob Ihre Server
Memory consumption
,CPU usages
ausgeführt werden unter 80 % oder nicht. Wenn diese Verwendungen als 80 % betrachten diese tests als unzuverlässig, als einen Bericht.Besser und aufwendiger zu verstehen, diese zwei blogs Wie viele Benutzer kann JMeter unterstützen? und 9 Einfache Lösungen für ein JMeter Load Test "Out of Memory" Fehler helfen muss.
Es ist no limit auf die Ausführung des Threads in
Jmeter
. Da es ein java-basiertes tool, es verwendet java-thread-Funktionen. Im Fall der gleichzeitigen Ausführung des Threads müssen wir Sorgfalt bei der Konfiguration der Maschine (dh. Größe des Arbeitsspeichers und der CPU).Vermeiden
OutOfMemory
Problem versuchen zu laufenjmeter
imNON-GUI
- Modus mit benutzerdefinierten java-Laufzeitumgebung die Argumente injmeter
Skript inapache-jmeter/bin/jmeter
.Standardwert ist 512 MB.
Ich glaube nicht, dass es einen thread beschränken auf JMeter selbst wenn Ihre Maschine damit umgehen kann. Die Grundidee des Tests sollte sein, dass die Umschaltung der thread und die Wartezeit sollte keine Auswirkungen auf die tatsächliche performance-Metriken zu viel.
Ist es ein riesiger Unterschied zwischen den beiden Fällen. Im ersten Fall wird das Schlimmste Szenario, Sie haben 500 gleichzeitige Benutzer. Im zweiten Fall wird die maximale Anzahl der gleichzeitigen Benutzer wird 50. Die Durchschnittliche Zeit, die für Szenario 1 wird größer sein als die Durchschnittliche Zeit, die für Szenario 2.