عنوان:

‫نحوه پیاده‌سازی استراتژی‌های کش در NET.


نویسنده: وحید نصیری
تاریخ: ۱۴۰۳/۱۲/۰۸ ۱۰:۱۸
آدرس: www.dntips.ir
این مطلب به بررسی پنج استراتژی کش در NET. می‌پردازد و از HybridCache جدید موجود در NET 9. استفاده می‌کند که کش درون حافظه و کش توزیع شده را ترکیب می‌کند.

راه‌اندازی HybridCache

  • HybridCache مشکل ازدحام کش را برطرف می‌کند.
  • ابتدا کش درون حافظه (سطح 1)، سپس کش توزیع شده (سطح 2) را بررسی می‌کند و در نهایت به پایگاه داده بازمی‌گردد.
  • بسته‌های آن: NuGet: Microsoft.Extensions.Caching.Hybrid و Microsoft.Extensions.Caching.StackExchangeRedis.
  • پیکربندی آن شامل ثبت آن در DI و پیکربندی اختیاری Redis است.

استراتژی‌های کش

Cache Aside: ابتدا کش را بررسی می‌کند؛ اگر یافت نشد، از پایگاه داده واکشی کرده و کش می‌کند.
  • مزایا: ساده، بار پایگاه داده را کاهش می‌دهد، کش بر اساس تقاضا.
  • معایب: خطاهای اولیه، نیاز به منطق برنامه.
  • موارد استفاده: کاتالوگ‌های محصولات تجارت الکترونیک، وبلاگ‌ها.

Read Through Cache: کش، در صورت عدم وجود داده، آن را واکشی می‌کند.
  • مزایا: منطق متمرکز، کد برنامه ساده‌شده.
  • معایب: نیاز به پشتیبانی کش، تنظیمات پیچیده، کنترل کمتر برنامه.
  • موارد استفاده: توصیه‌های محصول، پیکربندی‌های سراسری.

Write Around: نوشتن‌ها از کش عبور می‌کنند که در خواندن‌های بعدی به‌روز می‌شود.
  • مزایا: کاهش سربار نوشتن، پیاده‌سازی ساده.
  • معایب: داده‌های قدیمی، احتمال عدم همگام‌سازی کش.
  • موارد استفاده: خطوط لوله ورود به سیستم و تجزیه و تحلیل، ورود داده‌های با فرکانس بالا.

Write Back: نوشتن‌ها ابتدا به کش می‌روند، سپس به طور ناهمزمان به پایگاه داده.
  • مزایا: نوشتن با سرعت بالا، مناسب برای سناریوهای نوشتن فشرده.
  • معایب: سازگاری نهایی.
  • پیاده سازی مثال، از کانال‌ها و سرویس‌های پس زمینه برای بروز رسانی ناهمزمان پایگاه داده استفاده میکند.


مشاهده مطلب اصلی