وقتی صحبت از N+1 میشود، بیشتر افراد فقط Controller را بررسی میکنند.
اما این باگ میتواند در جاهای دیگری هم پنهان باشد:
* Resource
* API Resource
* Blade View
* Livewire Component
* Observer
مثلاً:
return UserResource::collection($users);
اگر داخل
UserResource رابطهای مثل:$user->roles
را بدون Eager Loading فراخوانی کنید،
همان مشکل N+1 دوباره ایجاد میشود.
---
🎯 همیشه فقط Query اولیه را بررسی نکنید؛ مسیر کامل تولید Response را تحلیل کنید.
💡 بسیاری از مشکلات Performance در لایهای رخ میدهند که کمتر کسی به آن توجه می کند.
@CodeVerse_dev