Java Optimierung und Performance Tuning
Seminar
In Dortmund
Beschreibung
-
Kursart
Intensivseminar berufsbegleitend
-
Niveau
Mittelstufe
-
Methodik
Inhouse
-
Ort
Dortmund
-
Dauer
3 Tage
-
Beginn
nach Wahl
Javas Vorteile in hochperformanten, kommerziellen Systemen beweisen Beispiele wie eBay oder Google Calendar. Doch die Optimierung von Java-Engpässen ist nicht trivial, und hartnäckig hält sich das Vorurteil, Java-Programme seien grundsätzlich langsamer. Unser Optimierungsseminar gibt eine Schritt-für-Schritt-Anleitung zum Erkennen und Lösen solcher Performance-Probleme. Das Hauptziel des Kurses stellt die Analyse der Engpässe über Performance-Monitoring Tools dar. Seminarteilnehmer lernen, wie nach dem Erkennen einer Problemstelle mit Hilfe allgemeingültiger Strategien Programme effizienter laufen und weniger Hauptspeicherplatz einnehmen. Die Weiterbildung behandelt insbesondere Optimierungsstrategien zur Verbesserung der Laufzeit von Java Enterprise-Anwendungen, wie zum Beispiel effiziente Caching-Strategien, die Beschleunigung einer Datenbankanbindung oder die Optimierung beim Austausch von Web-Service-Nachrichten.
Standorte und Zeitplan
Lage
Beginn
Beginn
Hinweise zu diesem Kurs
Gute praktische Kenntnisse in Java und längere Projekterfahrung.
Meinungen
Themen
- Java
- Programmierung
Dozenten
tutego Dozent
IT-Programmierung
auf Anfrage Unsere Dozenten haben jahrelange praktische Erfahrungen in Ihren Fachgebieten durch Projektarbeit. Ihr Referent für das Seminar kann sich durch seine langjährige Erfahrung als Dozent und detaillierten Kenntnisse im gewünschten Bereich schnell auf die Bedürfnisse Ihrer Mitarbeiter einstellen.
Inhalte
- Arbeitsweise einer JVM
- Interpretierende JVM
- Java Just in Time Compiler (JIT)
- Adaptive Compilierung bei HotSpot
- Tuning-Parameter einer JVM
- Bytecode-Kompression
- Java-Stack: Hardware, Betriebssystem, JVM, Java-Programme
* Performance messen, Benchmarking, Profiling
- Profiler Modi verstehen und richtig deuten
- Macro- und Micro-Benchmarks
- Benchmark-Programme für Java VM und Java Enterprise-Anwendungen
- Durch Profiling Performance-Probleme erkennen: das Pareto-Prinzip
- Profiling-Tools: Eclipse Profiler, Netbeans Profiler, InfraRED, VisualVM
- Speicher-Monitoring
- Remote Monitoring über JMX
- JVMTI
* Klassische Compileroptimierungen
- Mathematisches
- Schleifenoptimierungen
- Invarianten
* Leben und Tod: Der Werdegang der Objekte
- Lebenszyklus der Objekte
- Schwache Referenzen
- Objektpools und Cache
- Arbeitsweise von Garbage Collection, Garbage Collection Algorithmen
- Speicherlecks erkennen und vermeiden
* Java-typische Optimierungen
- Strings und Zeichenkettenoperationen
- Klassen- und Methodendesign
- Kosten von Ausnahmen
- Geladene Klassen überwachen, Klassenlader steuern
* Nebenläufigkeit durch Threads
- Parallelisieren von Aufgaben
- Kosten durch Thread-Synchronisation
- Thread-Pools
- Fork/Join-Framework
* Utility-Klassen in der Java-Bibliothek
- Datenstrukturen und Algorithmen
- Große Ganz- und Fließkommazahlen
- Zeitberechnungen
* Ein- und Ausgabe, XML und Netzwerk
- Pufferung
- Serialisierung
- New I/O (NIO)
- StaX optimal einsetzen
- Validierung von XML-Dokumenten, Caching
* Performante Datenbankzugriffe über JDBC
- Datenbankanbindungen beschleunigen
- Connection-Pools
- PreparedStatements
- Isolation Level bei Transaktionen
- Datenbank Locking: Optimistisches/Pessimistisches Locking
- Lazy Load Pattern
* Enterprise Java
- Einführung in Performance-Pattern/Anti-Pattern bei Java EE-Anwendungen
- Optimierungen von mehrschichtigen Anwendungen
- Java EE Caching-Strategien
- HttpSession
- Lasttests zum Aufspüren von Engpässen mit JMeter
- Verteilte Programmierung (RMI/CORBA)
- Java EE-Pattern zur Minimierung der übertragenen Datenmenge: Value Objects
- Web-Services modellieren
- Servlets und Java Server Pages (JSP): Schnell vom Request zum Response
- Enterprise Java Beans (EJB)
- Optimierung des OR-Mappers
- Java Message Service (JMS)
- Applikationsserver im Produktions- und Entwicklungs-Modus
Zusätzliche Informationen
Java Optimierung und Performance Tuning