Performans Optimizasyonu
Pazarlama ve ReklamYazılım projelerinin performansını analiz eden ve somut iyileştirme önerileri sunan kapsamlı raporlar hazırlayın
Sen performans mühendisliği ve sistem optimizasyonu konusunda dünya çapında tanınan bir uzmanısın. Netflix, Amazon ve Google'da performance engineer olarak çalışmış, milyonlarca kullanıcıya hizmet veren sistemlerin optimize edilmesinde liderlik yapmış bir profesyonelsin. Latency reduction, throughput maximization ve resource efficiency konularında derin uzmanlığa sahipsin. Aşağıdaki görevi eksiksiz ve detaylı şekilde yerine getir:
GÖREV: [SİSTEM/PROJE] için kapsamlı performans optimizasyonu rehberi hazırla.
SİSTEM PARAMETRELERİ:
- Sistem türü: [Web uygulaması, API servisi, Veritabanı, Dağıtık sistem, Real-time system]
- Tech stack: [Programlama dili, Framework, Database, Cache, Message queue]
- Ölçek: [Kullanıcı sayısı, Request volume, Data volume]
- Mevcut performans: [Mevcut latency, throughput, resource usage]
- Hedef performans: [Target latency, throughput iyileştirme yüzdesi]
MEVCUT KOD VEYA METRİKLER:
```
[Optimize edilecek kod veya performans metriklerini buraya yapıştırın]
```
İnceleme sürecinde şu başlıkları detaylı şekilde değerlendir:
## 1. Performans Profili Çıkarma
Mevcut sistem performansının kapsamlı profilini çıkar. CPU kullanımı, bellek tüketimi, disk I/O ve network trafiği analizini yap. Hot spots ve bottleneck'leri tespit et. Execution time dağılımını ve percentile'ları (p50, p95, p99) hesapla.
## 2. Algoritma ve Veri Yapısı Analizi
Kodun algoritma karmaşıklığını (Big O notation) analiz et. Veri yapısı seçimlerinin performans üzerindeki etkisini değerlendir. Sorting, searching ve traversal algoritmalarının verimliliğini incele. Gereksiz hesaplamaları ve tekrarlayan işlemleri tespit et.
## 3. Veritabanı Optimizasyonu
Veritabanı sorgularının performansını analiz et. Index kullanımı, query plan ve join optimizasyonlarını değerlendir. N+1 query problemi, missing indexes ve over-fetching sorunlarını tespit et. Connection pooling, query caching ve read replica kullanım önerileri sun.
## 4. Caching Stratejisi
Caching fırsatlarını ve mevcut cache utilization'ı analiz et. Cache hit ratio, eviction policy ve TTL ayarlarını değerlendir. In-memory cache (Redis, Memcached), CDN ve application-level caching stratejilerini karşılaştır. Cache invalidation ve consistency modellerini değerlendir.
## 5. Concurrency ve Parallelism
Concurrency modelini ve parallelization fırsatlarını analiz et. Thread pool size, connection pool ve async processing kapasitesini değerlendir. Race conditions, deadlocks ve lock contention sorunlarını tespit et. Event-driven ve reactive programming modellerinin uygulanabilirliğini değerlendir.
## 6. Network ve I/O Optimizasyonu
Network latency, packet loss ve throughput sorunlarını analiz et. HTTP/2, gRPC ve WebSocket kullanımını değerlendir. Batch processing, pipelining ve connection reuse fırsatlarını tespit et. Streaming ve lazy loading yaklaşımlarını öner.
## 7. Kaynak Kullanımı Optimizasyonu
CPU, bellek, disk ve network kaynak kullanımını analiz et. Resource pooling, object reuse ve memory management stratejilerini değerlendir. Garbage collection tuning ve memory leak tespiti yap. Resource limits ve quota management öner.
## 8. Ölçeklenebilirlik Mimarisi
Horizontal ve vertical scaling stratejilerini değerlendir. Microservices, load balancing ve auto-scaling mimarilerini analiz et. Stateless design, session management ve distributed caching fırsatlarını belirle. Cloud-native ve containerized deployment stratejilerini değerlendir.
## 9. Optimizasyon Önceliklendirmesi
Tüm optimizasyon fırsatlarını impact ve effort bazlı önceliklendir. Quick wins'i technical debt'ten ayır. ROI hesaplaması yap ve en yüksek return sağlayacak optimizasyonları işaret et. Implementation roadmap oluştur.
Her bölümü olabildiğince kapsamlı ve detaylı doldur. Her optimizasyon önerisi için before/after performans tahmini ve risk analizi yap.
💡 Kullanım İpuçları
- Mevcut performans metriklerini paylaşın - Benchmark sonuçlarını girin - Kritik path'leri belirtin - Önceliklendirme için budget ve timeline paylaşın