Schulung: Java Performance Tuning
Optimierung von Java-Anwendungen
- Einführung in die Performance-Analyse von Java-Enterprise-Anwendungen mit JDK-Tools und Profiling-Werkzeugen
- Grundlegende Optimierungstechniken für JVM, Garbage Collection, Threading und Microservices
- Praktische Übungen zur strukturierten Analyse und Verbesserung von Performance-Problemen
Die erfolgreiche Entwicklung hochperformanter E-Commerce-Systeme mit Java ist heute Realität. Die systematische Performance-Optimierung solcher Java-Anwendungen erfordert jedoch fundiertes Know-how und eine strukturierte Vorgehensweise.
In diesem Seminar vermitteln wir einen umfassenden Überblick über moderne Methoden und Tools zur Performance-Optimierung von Java-Applikationen.
Die Teilnehmenden lernen die häufigsten Ursachen von Performance-Engpässen kennen und erarbeiten präventive Strategien zu deren Vermeidung. Im Fokus steht die methodische Performance-Analyse von Java-Enterprise-Anwendungen unter Einsatz des JDK-Toolings sowie ausgewählter Open-Source- und Enterprise-Tools.
In praxisnahen Übungen wird Schritt für Schritt demonstriert, wie Performance-Probleme in produktiven Anwendungen identifiziert, analysiert und effektiv behoben werden können.
Grundlagen der Java-Performance
- Worum geht’s bei Performance?
- Besonderheiten bei Java in Enterprise-Umgebungen
- Performance-Metriken: Latenz, Antwortzeit, Durchsatz, Ressourcenverbrauch, Perceived Performance
- Systematische Methodik: Anforderungen → Messen → Analysieren → Optimieren
- Micro-Benchmarking mit JMH
Java-Speichermodell & Garbage Collection
- Speicherverwaltung in Java
- Speicherbereiche in Java: Heap, Stack, Metaspace, Native Memory
- Garbage Collection (GC): Grundkonzepte und moderne Algorithmen
- Memory-Analyse und Optimierung
- Tools für das GC-Monitoring
- String Deduplication
- Memory Leaks: Erkennung und Analyse
- Spezifika für Jakarta EE
Threading & Concurrency
- Threading-Modelle und Performance-Probleme
- Virtual Threads und Structured Concurrency
- Thread-Pool-Optimierung
- Praktische Performance-Analyse
Microservices-Performance
- Framework-Vergleich (Jakarta EE, Quarkus und Spring Boot)
- Serialisierungsoptionen für Servicekommunikation
- Kommunikationsprotokolle und Performance
- Monitoring und Optimierung
Best Practices & Wrap-up
- Zusammenfassung der wichtigsten Optimierungsstrategien
- Checkliste für Performance-Probleme
- Weiterführende Ressourcen
- Ausblick: GraalVM und Native Images
Dieser Kurs richtet sich an erfahrene Java-Entwickelnde, insbesondere aus den Bereichen Business-Anwendungen und Microservices (Spring Boot, Quarkus, Jakarta EE).
Voraussetzungen:
- Fundierte Kenntnisse in der Java-Programmierung
- Erfahrung mit dem Entwickeln von Java-Anwendungen (Spring Boot, Jakarta EE o. Ä.)
- Grundlegendes Verständnis von JVM-Konzepten (Klassen, Threads, Speicherverwaltung)