Heim > Java > Hauptteil

Java-Heap-Speicherplatz – trotz Heap-Wachstum

WBOY
Freigeben: 2024-02-09 12:40:10
nach vorne
1084 Leute haben es durchsucht

Java-Heap-Speicherplatz ist der Speicherbereich, der zum Speichern von Objektinstanzen in der Java Virtual Machine verwendet wird. Er ist ein wichtiger Teil der Java-Programmlaufzeit. Die Größe des Heap-Speicherplatzes kann dynamisch angepasst werden, während das Programm ausgeführt wird. Der Heap-Speicherplatz kann vergrößert oder verkleinert werden. Obwohl die Größe des Heap-Speicherplatzes erhöht werden kann, sollte darauf geachtet werden, die Nutzung des Heap-Speicherplatzes ordnungsgemäß zu verwalten, um einen Speicherüberlauf zu vermeiden. Bei der Verwaltung des Java-Heap-Speicherplatzes müssen Sie auf den Betrieb des Garbage-Collection-Mechanismus achten und die Größe des Heap-Speicherplatzes angemessen festlegen, um einen effizienten Betrieb des Programms zu erreichen.

Frageninhalt

Das Problem, mit dem ich konfrontiert bin, besteht darin, dass die Java-Heap-Space-Ausnahme auftritt, ich aber gerade den Heap-Space vergrößert habe. Ich habe den Heap-Speicherplatz vergrößert

jmeter.sh

jvm_args="-xms1g -xmx8g"
heap="-xms1g -xmx8g"
Nach dem Login kopieren

und jmeter.bat

set jvm_args=-xms1g -xmx8g
set heap=-xms1g -xmx8g
Nach dem Login kopieren

In meinem Testplan gibt es keinen Listenner, Jmeter wird über die Befehlszeile gestartet, aber es passiert nichts, es erscheint immer eine Java-Heap-Space-Ausnahme.

Gibt es echte Experten, die mir helfen können?

Völlig unnormal:

java.lang.OutOfMemoryError: Java heap space Dumping heap to java_pid32652.hprof ... Heap dump file created [8922760824 bytes in 40.975 secs] summary + 55 in 00:01:03 = 0.9/s Avg: 9671 Min: 0 Max: 89909 Err: 41 (74.55%) Active: 50 Started: 50 Finished: 0 summary = 3811 in 00:03:38 = 17.5/s Avg: 1149 Min: 0 Max: 89909 Err: 41 (1.08%) Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "boundedElastic-94"
Nach dem Login kopieren

Workaround

Vielleicht bin ich kein „echter Experte“, aber ich sehe den jmeter.sh 文件中的更改不正确。您应该使用 exportBefehl zum Festlegen von Umgebungsvariablen.

Sie können auch die effektive JVM-Heap-Größe für jedes jsr223-Testelement erhalten:

println('Current heap: ' + Runtime.getRuntime().maxMemory() / 1024 / 1024 / 1024 + ' GB')
Nach dem Login kopieren

Weitere Informationen: 9 einfache Lösungen für den Fehler „Nicht genügend Speicher“ beim Jmeter-Lasttest

Wenn Sie Heap-Änderungen anwenden und dennoch auf Fehler stoßen, besteht die einzige Möglichkeit zur Behebung darin, in den Verteilten Testmodus zu wechseln

Das obige ist der detaillierte Inhalt vonJava-Heap-Speicherplatz – trotz Heap-Wachstum. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage