Das Java Development Kit (JDK) stellt Binärdateien, Tools und Compiler für die Entwicklung von Java-Anwendungen bereit. Ein hilfreiches enthaltenes Tool ist jconsole.
Zur Demonstration verwende ich den WildFly J2EE-Anwendungsserver, der Teil des JBOSS-Open-Source-Anwendungsserverprojekts ist. Zuerst starte ich eine eigenständige Instanz.
~/wildfly/24.0.1/bin$ ./standalone.sh
=========================================================================
JBoss Bootstrap Environment
JBOSS_HOME: /home/alan/wildfly/24.0.1
JAVA: /usr/lib/jvm/java-11-openjdk-11.0.11.0.9-5.fc34.x86_64/bin/java
Jetzt gebe ich in einem anderen Terminal jconsole
ein .
$ jconsole
Beim Start listet jconsole lokale Instanzen auf. Wählen Sie Lokaler Prozess, wählen Sie dann den Namen des Prozesses aus und klicken Sie auf Verbinden. Das ist alles, was Sie brauchen, um eine Verbindung herzustellen und jconsole mit einer laufenden Java Virtual Machine (JVM) zu verwenden.
Übersicht
Die Java Monitoring and Management Console zeigt die Prozesskennung (PID) oben im Dashboard an. Die Registerkarte „Übersicht“ enthält vier Diagramme, die die wichtigsten Werte für Heap-Speichernutzung, Threads, Klassen und CPU-Nutzung zeigen.
Mehr zu Java
- Was ist Java-Programmierung für Unternehmen?
- Red Hat-Build von OpenJDK
- Java-Spickzettel
- Kostenloser Online-Kurs:Entwicklung cloudnativer Anwendungen mit Microservices-Architekturen
- Neue Java-Artikel
Die Registerkarten oben bieten detailliertere Ansichten der einzelnen Bereiche.
Erinnerung
Auf der Registerkarte „Speicher“ werden Diagramme zu verschiedenen Aspekten des von der JVM verwendeten Speichers angezeigt. Die Größe des der JVM zugewiesenen Serversystemspeichers wird Heap genannt. Dieser Bildschirm enthält auch Details zur Nutzung durch die internen Komponenten des Heaps, wie z. B. Eden Space, Old Gen und Survivor Space. Sie können eine Garbage-Collection-Aktion auch manuell anfordern.
Fäden
Auf der Registerkarte Threads wird angezeigt, wie viele Threads ausgeführt werden. Sie können auch manuell nach Deadlocks suchen.
Klassen
Die Registerkarte Klassen zeigt Ihnen, wie viele Klassen geladen und wie viele entladen wurden.
VM-Zusammenfassung
Die Registerkarte VM-Zusammenfassung enthält viele Details über die Anwendung und das Hostsystem. Sie können erfahren, welches Betriebssystem und welche Architektur Sie verwenden, die Gesamtgröße des Systemspeichers, die Anzahl der CPUs und sogar den Swap-Speicherplatz.
Weitere Details zur JVM, die in der Zusammenfassung angezeigt werden, umfassen die aktuelle und maximale Heap-Größe sowie Informationen zu den verwendeten Garbage Collectors. Der untere Bereich listet alle Argumente auf, die an die JVM übergeben wurden.
MBeans
Auf der letzten Registerkarte, MBeans, können Sie alle MBeans aufschlüsseln, um Attribute und Werte für jede anzuzeigen.
Schlussfolgerung
Java gibt es schon seit langer Zeit und es treibt weiterhin Millionen von Systemen weltweit an. Es sind viele Entwicklungsumgebungen und Überwachungssysteme verfügbar, aber ein Tool wie jconsole im Basiskit enthalten zu haben, kann sehr wertvoll sein.