TGViewer
| کانال توسعه‌دهندگان لاراول | | کانال توسعه‌دهندگان لاراول | @developixlaravel · 1.54K subscribers
Post #170 882
🔍 در مثال بالا در نسخه‌ی اول برای گرفتن «پست‌های محبوب کاربر» روی Eloquent Collection بعد از get() فیلتر انجام شده و عملاً همه‌ی رکوردها از دیتابیس خوانده می‌شوند. این کار روی جدول‌های بزرگ می‌تواند باعث افزایش شدید مصرف مموری و زمان پاسخ شود. در نسخه‌ی دوم با استفاده از Query Builder و انتقال شرط به خودِ کوئری، فیلتر روی سطح دیتابیس انجام می‌شود و فقط داده‌های موردنیاز لود خواهند شد.

به‌جای فیلتر کردن بعد از get() روی Collection، بهتر است تا حد امکان شرط‌ها را قبل از اجرا شدن کوئری با متدهایی مثل where()، whereHas() و ... روی خود Query اعمال کنید تا هم مصرف مموری کم شود و هم سرعت پاسخ‌دهی API در سناریوهای پرفشار بهتر شود.

🔖 #Laravel #PHP #لاراول

👤 Developix

💎 Channel: @DevelopixLaravel
  • ❤ 3
  • 👍 2
More from @developixlaravel
  1. Oct 1, 2026روابط پایگاه داده چند ریختی یا Eloquent Polymorphic در لاراول - قسمت اول در لاراول، روابط…
  2. Sep 30, 2026مدیریت همزمانی و قفل‌گذاری روی پردازش‌ها در لاراول (Laravel Atomic Locks) در بخش چهارم از…
  3. Sep 26, 2026🔥 پکیج: ورود با حساب‌های دیگر؛ Socialite برای اضافه‌کردن ورود با حساب‌های دیگر به پروژه ل…
  4. Sep 25, 2026🔒 فقط داده‌های تأییدشده را ذخیره کن وقتی یک فرم ویرایش پروفایل داری، ممکن است کلاینت علاو…
  5. Sep 20, 2026حفاظت از پردازش ها با Laravel Rate Limiter بخش سوم - پیکربندی در قسمت سوم از مجموعه آموزش…
  6. Sep 16, 2026🚀 ‏LaraGram Brain منتشر شد! از این به بعد برای ساخت ربات‌های تلگرام با فریم‌ورک LaraG…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →