- Vorgehensweise:
- Zielsetzung bei der Optimierung
- Identifizierung von Performanceproblemen
- Optimierungsdreieck
- Der Optimierungszyklus
Werkzeuge und Hilfsmittel:
- Profiler
- Speicher- und System-Monitoring
- Last- und Performancetests
- Microbenchmarks
- Decompiler
Laufzeitumgebung:
- Arbeitsweise von JVM, JIT, HotSpot
- Speicherverwaltung
- Garbage-Collection-Algorithmen und Implementierungen
Optimierung von Programmen und effiziente Programmiertechnik:
- Klassische Optimierungen (Schleifen, Invarianten)
- Arrays
- Lebenszyklus und Wiederverwendung von Objekten
- Spezielle Referenztypen
- Caches und Objekt-Pools
- Zeichenkettenverarbeitung
Effizienter Einsatz der Klassenbibliotheken:
- Datenstrukturen
- Klassen der Collection-API (Listen, Warteschlangen, Mengen, Assoziativspeicher)
- Alternative Collection-Bibliotheken
- Ein-/Ausgabe, NIO
- Serialisierung, alternative Serialisierungsbibliotheken
Multithreading und Parallelverarbeitung:
- Plattform-Threads und virtuelle Threads
- Threadpools
- Java Memory Model und Synchronisierung
- Java-Streams seriell und parallel: Einsatzmöglichkeiten und typische Fallstricke
MethodeIn unserem Seminar vermitteln Ihnen unsere Trainer:innen die Schulungsinhalte anhand von Kurzvorträgen, die durch Diskussionen mit den anderen Teilnehmenden, praktische Übungen und Workshops angereichert werden. Praktische Arbeiten am System, z.B. Performance-Probleme analysieren, Messungen durchführen, Profilergebnisse auswerten, sorgen dafür, dass Sie die gezeigten Optimierungstechniken direkt im Code anwenden. Der Fokus liegt auf reproduzierbaren Vorgehensweisen, die Sie anschließend in Ihren eigenen Projekten anwenden können.
LernzielePerformante Java-Anwendungen sind entscheidend für den stabilen und effizienten Betrieb moderner Softwaresysteme. In diesem fünftägigen Seminar lernen Sie, Java-Anwendungen systematisch zu analysieren, Performance-Engpässe zu identifizieren und durch gezielte Optimierungen zu beheben. Sie werfen einen genauen Blick auf die Funktionsweise der Java Virtual Machine, lernen Garbage-Collection-Algorithmen kennen und verstehen, wie die Speicherverwaltung und Programmverarbeitung im Detail funktionieren. Darüber hinaus arbeiten Sie mit Profiling-Werkzeugen, Microbenchmarks und Last- sowie Performancetests, um Engpässe gezielt zu identifizieren. Das Seminar behandelt klassische Optimierungsansätze ebenso wie moderne JVM- und Profiling-Techniken und zeigt, wie Sie Performance und Stabilität Ihrer Java-Anwendungen nachhaltig verbessern. Das Seminar ist als Live Online Training oder Präsenzveranstaltung buchbar.
Nach Abschluss kennen Sie die zentralen Stellschrauben in JVM und Programmcode und können Java-Anwendungen systematisch optimieren.
ZielgruppenDieses Seminar richtet sich an Software-Ingenieurinnen und Ingenieure, Internet- und Intranet-Entwickler:innen sowie projekterfahrene Anwendungsentwickler:innen, die die Performance ihrer Java-Anwendungen gezielt verbessern möchten.