درون‌مایه حافظه نهان

درحال مشاهده اسناد Apigee Edge هستید.
به اسناد Apigee X بروید.
اطلاعات

این موضوع عملکرد حافظه نهان را در زیر خط‌مشی‌هایی مانند خط‌مشی «پر کردن حافظه نهان»، خط‌مشی «جستجوی حافظه نهان»، خط‌مشی «نامعتبر کردن حافظه نهان»، و خط‌مشی «حافظه نهان پاسخ» توضیح می‌دهد.

حافظه‌های نهان مشترک و محیط

هر خط‌مشی ذخیره در حافظه نهان که پیکربندی می‌کنید می‌تواند از یکی از دو نوع حافظه نهان استفاده کند: حافظه نهان مشترک درون‌گنجانده‌شده که برنامه‌هایتان به آن دسترسی دارند و یک یا چند حافظه نهان با محدوده محیطی که ایجاد می‌کنید.

  • حافظه نهان مشترک: به‌طور پیش‌فرض، کارگزاران شما در هر محیط به یک حافظه نهان مشترک دسترسی دارند. حافظه نهان مشترک برای موارد استفاده پایه به‌خوبی کار می‌کند.

    فقط بااستفاده از خط‌مشی‌های ذخیره در حافظه نهان می‌توانید با حافظه نهان هم‌رسانی‌شده کار کنید، نه با میانای برنامه‌سازی کاربردی مدیریت. برای اینکه خط‌مشی ذخیره کردن از حافظه نهان مشترک استفاده کند، کافی است عنصر <CacheResource> خط‌مشی را حذف کنید.

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

    وقتی حافظه نهان محیط ایجاد می‌کنید، ویژگی‌های پیش‌فرض آن را پیکربندی می‌کنید. می‌توانید خط‌مشی ذخیره کردن در حافظه نهان داشته باشید که با مشخص کردن نام حافظه نهان در عنصر <CacheResource> خط‌مشی از حافظه نهان محیط استفاده کند.

درباره رمزگذاری حافظه نهان

Edge for Public Cloud (لبه برای Cloud عمومی): حافظه نهان فقط در سازمان‌های فعال‌شده با PCI- و HIPAA رمزگذاری می‌شود. رمزگذاری برای این سازمان‌ها درطول آماده‌سازی سازمان پیکربندی می‌شود.

سطوح حافظه نهان درون‌حافظه‌ای و پایدار

هر دو حافظه نهان مشترک و محیطی براساس سیستم دو سطحی ساخته شده‌اند که از سطح درون حافظه و سطح ماندگار تشکیل شده است. خط‌مشی‌ها به‌عنوان یک چارچوب ترکیبی با هر دو سطح تعامل دارند. ‫Edge رابطه بین سطوح را مدیریت می‌کند.

  • سطح ۱ حافظه نهان درون حافظه (L1) برای دسترسی سریع است. هر گره پردازش پیام (MP) حافظه نهان درون‌حافظه‌ای خود را (پیاده‌سازی‌شده از Ehcache) برای سریع‌ترین پاسخ به درخواست‌ها دارد.
    • در هر گره، درصد معینی از حافظه برای استفاده توسط حافظه نهان رزرو می‌شود.
    • وقتی به حد مجاز حافظه رسیدید، Apigee Edge ورودی‌های حافظه نهان را از حافظه برمی‌دارد (اگرچه این ورودی‌ها همچنان در حافظه نهان دائمی L2 نگهداری می‌شوند) تا مطمئن شود حافظه برای فرایندهای دیگر دردسترس باقی می‌ماند.
    • ورودی‌ها به ترتیب زمان از آخرین دسترسی برداشته می‌شوند، به‌طوری که قدیمی‌ترین ورودی‌ها ابتدا برداشته می‌شوند.
    • این حافظه‌های نهان همچنین براساس تعداد ورودی‌های حافظه نهان محدود می‌شوند.
  • سطح ۲ حافظه نهان ماندگار (L2) در زیر حافظه نهان درون حافظه است. همه گره‌های پردازش پیام از یک فروشگاه داده‌های حافظه نهان (Cassandra) برای ماندگار کردن ورودی‌های حافظه نهان استفاده می‌کنند.
    • ورودی‌های حافظه نهان حتی پس‌از برداشته شدن از حافظه نهان L1، مثلاً وقتی به محدودیت‌های درون حافظه می‌رسند، در اینجا باقی می‌مانند.
    • ازآنجایی‌که حافظه نهان ماندگار بین پردازشگرهای پیام (حتی در مناطق مختلف) مشترک است، ورودی‌های حافظه نهان صرف‌نظر از اینکه کدام گره درخواست داده‌های حافظه نهان را دریافت می‌کند، دردسترس هستند.
    • فقط ورودی‌های با اندازه معین ممکن است در حافظه نهان ذخیره شوند و محدودیت‌های دیگری برای حافظه نهان اعمال می‌شود. مدیریت محدودیت‌های حافظه نهان را ببینید.

همچنین ممکن است به جزئیات ذخیره کردن در حافظه نهان Apigee Edge در انجمن Apigee علاقه‌مند باشید.

نحوه استفاده خط‌مشی‌ها از حافظه نهان

در زیر نحوه مدیریت ورودی‌های حافظه نهان توسط Apigee Edge درحالی‌که خط‌مشی‌های حافظه نهان شما کار می‌کنند توضیح داده شده است.

  • وقتی خط‌مشی ورودی جدیدی در حافظه نهان می‌نویسد (خط‌مشی PopulateCache یا ResponseCache):
    1. ‫Edge ورودی را فقط در پردازنده پیام که درخواست را مدیریت کرده است در حافظه نهان L1 می‌نویسد. اگر قبل‌از منقضی شدن ورودی، به محدودیت‌های حافظه در پردازنده پیام برسید، Edge ورودی را از حافظه نهان L1 برمی‌دارد.
    2. ‫Edge همچنین ورودی را در حافظه نهان L2 می‌نویسد.
  • وقتی خط‌مشی از حافظه نهان می‌خواند (خط‌مشی LookupCache یا ResponseCache):
    1. ‫Edge ابتدا ورودی را در حافظه نهان L1 پردازنده پیام که درخواست را مدیریت می‌کند جستجو می‌کند.
    2. اگر ورودی درون حافظه مربوطه وجود نداشته باشد، Edge ورودی را در حافظه نهان ماندگار L2 جستجو می‌کند.
    3. اگر ورودی در حافظه نهان پایدار نباشد:
      • خط‌مشی LookupCache: هیچ مقداری از حافظه نهان بازیابی نمی‌شود.
      • خط‌مشی ResponseCache: Edge پاسخ واقعی را از هدف به کاربر برمی‌گرداند و ورودی را تا زمانی که منقضی شود یا نامعتبر شود در حافظه نهان ذخیره می‌کند.
  • وقتی خط‌مشی‌ای ورودی حافظه نهان موجود را به‌روزرسانی یا نامعتبر می‌کند (خط‌مشی InvalidCache،‏ PopulateCache، یا ResponseCache):
    1. پردازشگر پیامی که درخواست را دریافت می‌کند، همه‌فرستی‌ای برای به‌روزرسانی یا حذف ورودی در حافظه نهان L1 در خود و همه پردازشگرهای پیام دیگر در همه مناطق ارسال می‌کند.
      • اگر همه‌فرستی موفقیت‌آمیز باشد، هر پردازنده پیام دریافت‌کننده ورودی را در حافظه نهان L1 به‌روزرسانی یا حذف می‌کند.
      • اگر همه‌فرستی ناموفق باشد، مقدار نامعتبر حافظه نهان در حافظه نهان L1 در پردازنده‌های پیامی که همه‌فرستی را دریافت نکرده‌اند باقی می‌ماند. آن پردازشگرهای پیام تا زمانی که زمان ماندگاری ورودی منقضی شود یا وقتی که محدودیت‌های حافظه پردازشگر پیام به حداکثر برسد، داده‌های قدیمی در حافظه نهان L1 خواهند داشت.
    2. پخش همچنین ورودی را در حافظه نهان L2 به‌روزرسانی یا حذف می‌کند.

مدیریت محدودیت‌های حافظه نهان

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

  • محدودیت‌های حافظه نهان: محدودیت‌های مختلف حافظه نهان اعمال می‌شود، مانند اندازه نام و مقدار، تعداد کل حافظه‌های نهان، تعداد موارد در یک حافظه نهان، و انقضا.
  • حافظه نهان درون حافظه (L1). محدودیت‌های حافظه برای حافظه نهان شما قابل پیکربندی نیست. محدودیت‌ها توسط Apigee برای هر پردازشگر پیام که میزبان حافظه‌های نهان برای چندین مشتری است تنظیم می‌شود.

    در محیط ابری میزبانی‌شده، که حافظه‌های نهان درون‌حافظه‌ای برای همه استقرار مشتری در چند پردازشگر پیام مشترک میزبانی می‌شود، هر پردازشگر دارای آستانه درصد حافظه قابل‌تنظیم با Apigee است تا اطمینان حاصل شود که حافظه نهان همه حافظه برنامه را مصرف نمی‌کند. وقتی آستانه برای پردازشگر پیام معینی رد می‌شود، ورودی‌های حافظه نهان براساس کمترین استفاده اخیر از حافظه تخلیه می‌شوند. ورودی‌های تخلیه‌شده از حافظه تا زمانی که منقضی شوند یا نامعتبر شوند در حافظه نهان L2 باقی می‌مانند.

  • حافظه نهان پایدار (L2). ورودی‌های بیرون‌شده از حافظه نهان درون‌حافظه‌ای طبق تنظیمات زمان زندگی قابل‌تنظیم در حافظه نهان ماندگار باقی می‌مانند.

بهینه‌سازی‌های قابل‌پیکربندی

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

تنظیم شرح یادداشت‌ها
انقضا زمان زنده بودن ورودی‌های حافظه نهان را مشخص می‌کند. هیچ‌کدام.