- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
In de cursus Java Performance Improvement leren de deelnemers de performance van Java applicaties te analyseren en te verbeteren.
In de eerste plaats worden diverse aspecten van performance in het algemeen behandeld, zoals de ervaren performance en het beslag op het geheugen en daarna van Java performance in het bijzonder, zoals de hotspot JVM en garbage collection.
Vervolgens wordt aandacht besteed aan de verschillende benchmarks voor Java en de verschillende fasen van het performance proces, zoals performance monitoring, profilering en tuning. Ook worden een aantal specifieke performance technieken die op Java code kunnen worden toegepast besproken.
De performance impact van de verschillende constructies in de Java taal en van de verschillende classes in de Java API worden ook besproken.
Verder leren de deelnemers om te gaan met performance tools zoals een profiler om knelpunten te identificeren. In dit verband wordt aandacht besteed aan de profiling punten, tijd metingen en het opsporen van memory leaks. Stress testing van Web Applications wordt eveneens besproken.
Tot slot gaat speciale aandacht uit naar performance problemen met JDBC en performance in een Java EE omgeving. Hierbij komen de configuratie van pools, caches en het gebruik van load balancing en clustering aan de orde.
Ervaren Java developers die de performance van Java software willen verbeteren.
Kennis van en ervaring met programmeren in Java is vereist om deze cursus te volgen.
De cursus heeft een hands-on karakter. De theorie wordt behandeld aan de hand van presentatie slides en wordt afgewisseld met praktische oefeningen. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Java Performance Improvement.
Module 1 : Java Performance Intro |
Module 2 : Java API Performance |
Module 3 : Profiling |
Influences on Performance Important Performance Aspects History of Java Performance JIT Compilation and JIT Compiler Client and Server Hotspot VM Garbage Collection Algorithms Java Performance Myths Perceived Performance Monitoring and Profiling Performance Tuning Heap Tuning Heap Activity Monitoring Common Performance Problems |
Java API Performance Pitfalls String Handling Buffered I/O New I/O Synchronization Primitives versus Wrappers Collections Array Copying Exception Handling Serialization Native methods Lazy Loading Object Reuse |
Profiling tools CPU Profiling CPU Profiling Approach Profiling a subset Profiling Points Type of Profiling Points Monitoring Threads Lock contention Identifying problematic patterns Stress Testing BenchMarking Java Performance Tips Performance Process |
Module 4 : Tuning Garbage Collection |
Module 5 : Java EE Performance |
|
GC and Performance Java Object Behavior Heap Space Organisation Heap Area Characteristics Young Generation Layout GC Performance Metrics Used GC Algorithms Performance Considerations Parallel collector Parallel compact collector Concurrent Mark-Sweep (CMS) Ergonomics |
JDBC Optimization Optimization Techniques JDBC connection pooling Single Batch Transactions Smart Queries Tuning Servlets and JSP's HTTP Session Tuning Web Server Tuning Clustering Clustering Types Load Balancing Sticky Sessions |