TGViewer
| کانال توسعه‌دهندگان PHP | | کانال توسعه‌دهندگان PHP | @developixphp · 1.68K subscribers
Post #89 807
در نمونه‌کد بالا در نسخهٔ اشتباه، هر بار برای گرفتن تنظیمات از دیتابیس یک کوئری جدید اجرا می‌شود و کل جدول settings در هر درخواست دوباره خوانده می‌شود؛ این کار هم فشار زیادی به دیتابیس وارد می‌کند و هم در لود بالا می‌تواند گلوگاه جدیِ کارایی ایجاد کند.

با استفاده از یک لایهٔ caching سطح‌برنامه (مثلاً ذخیره در یک متغیر static داخل تابع یا استفاده از APCu / Redis) می‌توانید نتایج را فقط یک‌بار بخوانید و در ادامهٔ طول عمر درخواست از همان دادهٔ cache شده استفاده کنید. این کار باعث کاهش چشمگیر تعداد کوئری‌ها، کاهش زمان پاسخ و آزاد شدن منابع دیتابیس در شرایط ترافیک بالا می‌شود.

در سناریوهایی مثل بارگذاری مکرر تنظیمات اپلیکیشن، session-less API ها یا اسکریپت‌هایی که چندین کلاس مختلف مدام از تنظیمات استفاده می‌کنند، پیاده‌سازی یک Config Repository با cache (مثل نسخهٔ اصلاح‌شده) نسبت به فراخوانی مستقیم دیتابیس در هر مرتبه، انتخاب بسیار بهینه‌تر و حرفه‌ای‌تری است.

🔖 #PHP #پی_اچ_پی

👤 Developix

💎 Channel: @DevelopixPHP
  • 👍 4
  • ❤ 1
  • 🔥 1
More from @developixphp
  1. Sep 26, 2026این کد موقع اجرا چه خروجی‌ای می‌ده و مشکلش کجاست؟ 🔖 #PHP #پی_اچ_پی 👤 Developix 💎 Channe…
  2. Sep 25, 2026🔥 پکیج: قراردادهای ترجمه سیمفونی اگر کد PHP را برای چندزبانگی می‌نویسید، بهتر است منطق بر…
  3. Sep 16, 2026🚀 ‏LaraGram Brain منتشر شد! از این به بعد برای ساخت ربات‌های تلگرام با فریم‌ورک LaraG…
  4. Sep 11, 2026ارسال ایمیل تأیید ثبت‌نام، بازیابی رمز عبور یا نوتیفیکیشن سفارش، تقریباً توی هر پروژه‌ PHP…
  5. Sep 10, 2026برنامه نویسی سوکت در PHP بخش اول عبارت دیگر در ارتباط های غیر سوکت برای ارسال یک پالس از س…
  6. Aug 31, 2026🔥 پکیج: استاندارد PSR-11 برای Container استاندارد PSR-11 فقط یه interface مشترک برای Cont…
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 →