Java Performans Temelleri
Performans nedir? Neden önemlidir?
İyi performansın ölçütleri
Performans testinin türleri (Load, Stress, Soak, Spike)
JVM Mimarisi ve Bellek Yönetimi
JVM’in çalışma yapısı
Heap, Stack, Metaspace, PermGen farkları
Classloader yapısı ve etkileri
Garbage Collection (GC) algoritmaları (Serial, Parallel, CMS, G1)
Garbage Collection Derinlemesine
GC nasıl çalışır?
GC tuning yöntemleri
GC log analizi ve yorumlanması
JVisualVM, GCViewer, JMC kullanımı
Performans Analizi Araçları
JConsole, VisualVM, Java Mission Control
Profiling araçlarının kullanımı
CPU, bellek, thread analizleri
JFR (Java Flight Recorder) ile kayıt ve analiz
Kod Düzeyinde Performans Optimizasyonu
Nesne yönetimi ve gereksiz nesne üretiminin önlenmesi
Immutable nesne kullanımı
Koleksiyon yapılarında seçim ve etkileri
I/O ve veritabanı işlemlerinin optimize edilmesi
Thread ve Concurrency Performansı
Thread kullanımı ve senkronizasyon
Deadlock, livelock, starvation problemleri
Java Concurrency API performans ipuçları
Thread pool tuning
Gerçek Hayat Senaryoları ve Uygulamalar
Performans sorunu analiz workshop’u
Kod örnekleri üzerinde iyileştirme çalışmaları
Sorunlu bir uygulamanın adım adım tuning edilmesi
Best Practices ve Sonuçlar
Performans iyileştirme için en iyi uygulamalar
Kod gözden geçirme ipuçları
Performans test senaryoları oluşturma
Sürekli izleme stratejileri