- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
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.
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.
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 |
Al onze cursussen zijn klassikale cursussen waarbij de cursisten aan de hand van een ervaren trainer met diepgaande materie kennis door de stof worden geleid. Theorie wordt steeds afgewisseld met oefeningen.
We doen ook maatwerk en passen dan de cursusinhoud aan op uw wensen. Op verzoek gaan we ook in op uw praktijkcases.
De cursustijden zijn in pricipe van 9.30 tot 16.30. Maar we zijn hierin flexibel. Soms moeten mensen namelijk kinderen naar de opvang brengen of halen en komen andere tijden hun beter uit. In goed overleg kunnen we dan andere cursustijden afspreken.
Wij zorgen voor de computers waarop de cursus gehouden kan worden. Op deze computer is de voor de cursus benodigde software al geinstalleerd. U hoeft geen laptop mee te nemen om aan de cursus te kunnen deelnemen. Als u liever op uw eigen laptop werkt kunt u hem desgewenst meenemen. De benodigde software wordt dan aan het begin van de cursus geinstalleerd.
Onze cursussen worden over het algemeen gegeven met Open Source software zoals Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda en Netbeans. Het digitale cursusmateriaal krijgt u na de cursus mee naar huis.
De cursus is inclusief lunch die we in een restaurantje op loopafstand van het cursuslokaal gebruiken.
De cursussen worden op diverse plaatsen in het land gepland. Een cursus gaat op een locatie door als er zich minimaal 3 mensen voor die locatie inschrijven. Als er inschrijvingen voor verschillende locaties zijn gaat de cursus door op onze hoofdlocatie is Houten net onder Utrecht. Een cursus op onze hoofdlocatie gaat ook door bij 2 inschrijvingen en regelmatig ook bij 1 inschrijving. Overigens doen we ook cursussen op de locatie van de klant als men daar prijs op stelt.
De intellectuele eigendomsrechten van de gepubliceerde cursus inhoud, ook wel aangeduid als infosheet, behoren toe aan SpiralTrain. Het is niet toegestaan de cursusinformatie, de infosheet, te publiceren in schiftelijke dan wel digitale vorm zonder de uitdrukkelijke toestemming van SpiralTrain. Onder de cursus inhoud dient te worden verstaan de beschrijving van de cursus inhoud in zinnen alsmede de indeling van de cursus in modules en onderwerpen in de modules.