Symfony

Performans ve Optimizasyon

Profiler, Blackfire, sorgu optimizasyonu, lazy loading, eager loading, cache stratejileri

22 mülakat soruları·
Senior
1

Geliştirme döngüsünde Symfony Profiler'ın temel amacı nedir?

Cevap

Symfony Profiler, her HTTP isteği hakkında ayrıntılı bilgi toplayan bir hata ayıklama aracıdır: yürütme süresi, SQL sorguları, bellek kullanımı, cache, events ve daha fazlası. Kodu değiştirmeden darboğazları belirlemeye ve uygulama davranışını analiz etmeye yardımcı olur. Geleneksel loglardan farklı olarak, Web Debug Toolbar üzerinden erişilebilen etkileşimli bir grafik arayüz sunar.

2

Performans analizinde Blackfire, Symfony Profiler'dan nasıl farklılaşır?

Cevap

Blackfire, fonksiyon fonksiyon düzeyinde derinlemesine kod analizi yapan, call graphs, profil karşılaştırmaları ve regresyon tespiti sunan bir PHP uygulama profiler'ıdır. İstek başına genel bir bakış sunan Symfony Profiler'ın aksine, Blackfire her fonksiyon çağrısında CPU, bellek ve I/O metrikleriyle kodun tam yürütülmesini izler. Ayrıca farklı kod sürümleri arasında performans karşılaştırması yapmayı da sağlar.

3

Doctrine ORM'de lazy loading ile eager loading arasındaki fark nedir?

Cevap

Lazy loading, ilişkileri yalnızca kod içinde gerçekten erişildiğinde yükler; bu, başlangıç yükünü azaltır ancak birden fazla ek sorguyla N+1 sorununa yol açabilir. Eager loading, ilişkileri JOIN aracılığıyla ana sorguyla birlikte hemen yükler; ek sorguları önler ancak aktarılan veri miktarını artırabilir. Seçim, verinin nasıl kullanılacağına bağlıdır.

4

Doctrine ile N+1 sorgu sorunu nasıl belirlenir ve çözülür?

5

Nadiren değişen ancak sık okunan veriler için hangi önbellekleme stratejisi kullanılmalıdır?

+19 mülakat soruları

Bir sonraki mülakatın için Symfony'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla