Curs Java Performance And Tuning

Acest curs acopera subiecte ca arhitectura JVM, alocarea si managementul memoriei, Garbage Collector , instrumente de profilare, studii de caz bazate pe proiecte reale, bune practici JDK si evaluari comparative.
Cod: JVA-028
Durata: 16 ore

Descriere

Toate aplicatiile Java trebuie sa fie eficiente in ceea ce priveste utilizarea memoriei si viteza de procesare. Insa alocarea unei memorii mai mari sau adaugarea unui CPU mai puternic nu este de fiecare data cea mai buna solutie.

Java Performance and Tuning este un curs intensiv adresat programatorilor cu experienta care vor sa descopere cum sa tuneze aplicatiile Java – alegand intre o alocare corecta a memoriei, cel mai eficient algoritm de Garbage Collector sau cea mai potrivita metoda de a folosi JDK API-ul.

Fiecare programator ar trebui sa inteleaga cum sa creasca eficienta unui program din punct de vedere al memoriei sau performantei. De asemenea, ar trebui sa inteleaga ceea ce se intampla in cadrul Java Virtual Machine. Toate aceste informatii ne ajuta sa detectam, reparam sau sa prevenim probleme ce tin de alocarea memoriei sau timpi de procesare scazuti.

Acest curs abordeaza subiecte legate de arhitectura JVM-ului, execution engine, memory model, garbage collectors, JVM tuning, JVM profiling si troubleshooting. Cu ajutorul mai multor studii de caz vom analiza fiecare element din perspectiva performantei si best practices in ceea ce priveste performanta.

Filosofia din spatele trainingului este ca un developer bun nu trebuie doar sa scrie un cod curat. El trebuie sa fie capabil sa analizeze codul si impactul pe care l-ar putea avea asupra performantei sistemului.

Subiecte curs

Arhitectura JVM
  • Ce este JVM
  • Ciclu de viata JVM
  • Arhitectura JVM
  • Runtime Data Areas

Class Loader
  • Model ierarhic
  • Cyclic delegation trap
  • Class Data Sharing
  • Studiu de caz

Execution Engine
  • Bytecode si Practica
  • Bytecode Interpreter
  • Ahead Of Time Compiler
  • Just In Time Compiler
  • Studiu de caz
  • Sun JVM Source Code & Studiu de caz

Structura memoriei Java
  • Stack
  • Code Cache
  • Heap
  • PermGen
  • Metaspace & Compressed Class Space
  • Studiu de caz

Java Garbage Collection
  • Garbage Collection Concepts
  • Tehnici Heap Allocation
  • JVM Safepoint
  • HotSpot Garbage Collectors
  • Train Collector
  • Serial Collector
  • Parallel Collector
  • Parallel Compacting Collector
  • Concurrent Mark-Sweep Collector
  • Garbage First Collector
  • Studiu de caz

Garbage Collection Friendly Programming
  • Object Reference Types
  • Strong reference
  • Soft reference
  • Weak Reference
  • Phantom Reference
  • Studiu de caz
  • Memory Leak
  • Studiu de caz

JVM Tuning
  • Abordare tuning
  • Parametri tuning
  • Studiu de caz

JVM Profiling
  • OS built-in tools (e.g. typeperf, PerfMon, ResMon, vmstat, iostat)
  • JDK Tools (e.g. VisualVM, JMC, jps, jstack, jmap, jstat, jconsole)
  • Studiu de caz
  • Eclipse Memory Analyzer
  • Studiu de caz

Studiu de caz
  • Studiu de caz - Heap Dump Analyzing
  • Studiu de caz - Thread Dump Analyzing

Performance Friendly Programming (Tips & Tricks)
  • Unsafe
  • Tehnici sincronizare
  • Memory Access Patterns
  • Java NIO
  • Exceptii
  • Logging
  • Collections

Obiective

Scopul acestui curs este sa ajute participantii sa inteleaga Java Virtual Machine din punct de vedere al:
  • Execution Engine
  • Memory Model
  • Garbage Collectors
  • Performance JDK APIs
  • Performance tactics
  • Profiling tools
  • Tehnicilor de troubleshooting
Ajuta programatorii sa stie cum sa tuneze, profileze si sa faca troubleshoooting in JVM prin intermediul analizei asupra dump-urilor (e.g. heap, thread) pentru a descoperi eventualele probleme si a evita blocajele din cadrul aplicatiilor.

Familiarizarea cu instrumentele de profilare (existente deja in OS sau oferite de JDK) si tehnicile de troubleshooting.

Performanta Java este in stransa legatura cu cateva tactici cheie si JDK API-ul pe care fiecare developer ar trebui sa le stie. In curs vom prezenta cele mai bune tactici precum si JDK API-ul.

Public tinta

Programatori Java cu experienta interesati sa invete cum sa creasca performanta aplicatiilor, cum functioneaza intern JVM-ul, cum sa tuneze si profileze JVM-ul si cum sa scrie codul eficient.

Cerinte curs

O buna intelegere a principiilor Java Core
  • Collections
  • Multithreading
  • Object creation lifecycle
  • Garbage Collector principles
O intelegere de baza a modului in care functioneaza CPU-ul si memoria

Trainer in Bucharest
Alexandru Mocioi Java Trainer
Alexandru este un software developer cu experienta atat in sectorul privat cat si in cel guvernamental. De-alungul carierei sale a avut ocazia sa lucreze in diferite roluri si cu diferite tehnologii. De la IoT, Office Building ERP si distributed systems with microservices la activitati de programare, project management, design de arhitectura software si software analysis. La nivel de tehnologii a lucrat, printre altele, cu Java Core Enterprise, NoSQL, JavaScript, SQL si Golang. Pe langa zona de programare, Alexandru faciliteaza cursuri IT&C pe subiecte precum Java Performance and Tuning, Java Design Patterns sau Java Enterprise with Spring and Hibernate. A participat ca speaker la o serie intreaga de evenimente derulate de comunitati Open Source si este un promotor al Linux si Open Source.
Cursul este programat in: Bucuresti
1.07.2019 - 2.07.2019
Interval orar: 09:00-17:00
Loc: Bucuresti
Durata: 16 ore
Limba: Romanian
Trainer
Alexandru Mocioi
Java Trainer
1663 RON
Inregistreaza-te pentru urmatorul curs.
+
Inregistrarea la urmatorul curs va asigura prioritatea pe lista de inscriere. Veti fi contactat pentru confirmarea inscrierii in momentul in care urmatorul curs este programat.
Inregistreaza-te pentru urmatorul curs.
+
Inregistrarea la urmatorul curs va asigura prioritatea pe lista de inscriere. Veti fi contactat pentru confirmarea inscrierii in momentul in care urmatorul curs este programat.
Bucuresti 1663 RON
Cracovia 1663 RON
Wroclaw 1663 RON

Facturile pentru curs sunt emise in moneda locala. Toate preturile de mai sus pot fi supuse modificarilor in functie de locul unde se desfasoara trainingul si modul de livrare. Preturile pot fi supuse modificarilor si in perioada in care se programeaza. Pentru persoane fizice pretul este cel afisat. Pentru persoane juridice se adauga TVA.

Alte cursuri care te-ar putea interesa:

Inscrie-te la

Alege datele
Prenume*
Nume*
Companie
Adresa email*
Telefon
Observatii
Luxoft Warsaw - Warsaw Spire, plac Europejski 1, 00-844 Warszawa
Dimitrie Pompeiu nr 5-7 , building C, Et. 5, sect 2, Bucharest, 014459

Contact phone:

021 371 4858
Luxoft Poland Wroclaw - Silver Tower pl. Konstytucji 3-go Maja 3 50-048 Wroclaw
Aleja Generała Tadeusza Bora-Komorowskiego 25, Quattro Business Park Five, 31-476 Kraków, Poland

Contact phone:

+48 122110650
Success
Iti multumim.
Inregistrarea ta a fost trimisa.