Antworten:
Verwenden Sie jps
und jstack
, um mehr über Java-Prozesse zu erfahren. jstat
kann auch für die Überwachung von Java-Statistiken nützlich sein.
jvmtop ist ein Befehlszeilentool, das eine Live-Ansicht für verschiedene Metriken, einschließlich Heap, bietet.
JvmTop 0.3 alpha (expect bugs) amd64 8 cpus, Linux 2.6.32-27, load avg 0.12
http://code.google.com/p/jvmtop
PID MAIN-CLASS HPCUR HPMAX NHCUR NHMAX CPU GC VM USERNAME #T DL
3370 rapperSimpleApp 165m 455m 109m 176m 0.12% 0.00% S6U37 web 21
11272 ver.resin.Resin [ERROR: Could not attach to VM]
27338 WatchdogManager 11m 28m 23m 130m 0.00% 0.00% S6U37 web 31
19187 m.jvmtop.JvmTop 20m 3544m 13m 130m 0.93% 0.47% S6U37 web 20
16733 artup.Bootstrap 159m 455m 166m 304m 0.12% 0.00% S6U37 web 46
Sie möchten wahrscheinlich die Speichernutzung analysieren.
Mit GCView können Sie möglicherweise visualisieren, was im GC-Protokoll angezeigt wird.
Wenn Sie das gc-Protokoll bereits aktiviert haben, können Sie es nur tail -f
für dieses Protokoll verwenden.
Versuchen Sie dies, es funktionierte in Ubuntu und RedHat:
java -XX:+PrintFlagsFinal -version | grep -iE 'HeapSize|PermSize|ThreadStackSize'
Für Windows:
java -XX:+PrintFlagsFinal -version | findstr /i "HeapSize PermSize ThreadStackSize"
Für Mac
java -XX:+PrintFlagsFinal -version | grep -iE 'heapsize|permsize|threadstacksize'
Die Ausgabe all dieser Befehle ähnelt der folgenden Ausgabe:
uintx InitialHeapSize := 20655360 {product} uintx MaxHeapSize := 331350016 {product} uintx PermSize = 21757952 {pd product} uintx MaxPermSize = 85983232 {pd product} intx ThreadStackSize = 1024 {pd product}
Java-Version "1.7.0_05" Java (TM) SE-Laufzeitumgebung (Build 1.7.0_05-b05) Java HotSpot (TM) 64-Bit-Server-VM (Build 23.1-b03, gemischter Modus)
Um die Größe in MB zu ermitteln, teilen Sie den Wert durch (1024 * 1024).
Verwenden Sie zur Überwachung der Verwendung des Live-Heap-Speichers jconsole.
Sie können dieses Tool auch unter https://github.com/TeoGia/jotun überprüfen
Es ist ein Wrapper von jstat und gibt die Heap- und RAM-Nutzung im json-Format aus
jhsdb jmap --heap --pid xxxx
hat den Trick gemacht