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
1 hour ago

Model::preventLazyLoading() mülakatta söylemek kesinlikle +10 puan kazandırır! Çok güzel bir tüyo.

T
Tarik M.
1 hour ago

Ayrıca AppServiceProvider boot() içine Model::handleLazyLoadingViolationUsing() ekleyip Sentry'e log göndermek canlıda da hayat kurtarır.