PHP (Laravel)
Büyük E-Ticaret Pazaryeri
Mid-Level PHP & Laravel Geliştirici
24 October 2026, 11:22
Laravel'de N+1 problemi canlıda nasıl anlaşılır ve with() dışında mimari olarak nasıl önlenir?
Mülakatçının Sorduğu Soru & Senaryo
Mülakatta canlı sistemde 10.000 ürün listelerken sayfanın neden 4 saniyede açıldığını sordular. Kodda Category->products ilişkisi vardı. with() yazmayı unutan bir junior ekibe mimari olarak bunu nasıl kısıtlarsın dediler.
Adayın Deneyimi & Verdiği Cevap
Laravel 8+ ile gelen Model::preventLazyLoading(!app()->isProduction()) özelliğini söyledim, çok beğendiler! Eğer birisi lazy loading yapmaya kalkarsa localde exception fırlatıyor.
Paylaşan: Elif K.
Topluluk Yanıtları (2)
C
Caner Dev
Model::preventLazyLoading() mülakatta söylemek kesinlikle +10 puan kazandırır! Çok güzel bir tüyo.
T
Tarik M.
Ayrıca AppServiceProvider boot() içine Model::handleLazyLoadingViolationUsing() ekleyip Sentry'e log göndermek canlıda da hayat kurtarır.