Caching یکی از موثرترین راه ها برای سرعت بخشیدن به API، کاهش بار سرور و ارائه تحمل خطا است. ما ذخیره سازی چند لایه را اجرا می کنیم: در سطح داده (Redis)، در سطح محتوا (CDN) و در سطح مسیریابی (API Gateway). این اجازه می دهد تا شما را به کاهش زمان پاسخ به میلی ثانیه، جلوگیری از اضافه بار و اطمینان از ثبات در طول تماس اوج.
انواع ذخیره سازی که ما استفاده می کنیم
| سطح بندی | ابزارها و مزایا |
|---|---|
| قرمز/حافظه ذخیره شده | حافظه پنهان سریع در حافظه برای ذخیره جلسات، نشانه ها، نتایج پرس و جو |
| CDN (Cloudflare، Akamai) | ذخیره سازی پاسخ های API استاتیک و شبه استاتیک در سرورهای لبه |
| دروازه API | پاسخ از کش بدون دسترسی به باطن در درخواست های مکرر، کنترل TTL |
هنگامی که کش به خصوص موثر است
نمایش داده شد تکراری با پارامترهای مشابه
نتایج محاسبات سنگین یا عملیات طولانی
دایرکتوری ها، فیلترها، داده های عمومی اغلب استفاده می شود
برنامه های چند منطقه ای با ترافیک جغرافیایی توزیع شده
چه ذخیره سازی برای API می دهد
پخش فوری
کاهش بار دادگان و پایانۀ پشتیبانی
مقاومت در برابر ترافیک (به عنوان مثال، هنگام راه اندازی تبلیغات یا به روز رسانی)
SLA های بهبود یافته، زمان بندی و پاسخگویی
هزینه های زیربنایی پایین تر
چگونه آن را اجرا کنیم
پیکربندی Redis با سیاست تخلیه و فضای نام
پیکربندی CDN با مسیر، پرس و جو و هدر ذخیره
ذخیره سازی در سطح دروازه (به عنوان مثال، با استفاده از کنگ، Tyk، دروازه API آمازون)
TTL، ناتوانی و مدیریت حافظه پنهان
ادغام با معیارهای: بازدید کش/نتواند, سرعت, حجم
جایی که بسیار مهم است
تجارت الکترونیک و خدمات تبلیغاتی با قله های تیز
سیستم عامل های بازی با تماس های API مکرر
برنامه های موبایل و SPA با حساسیت تاخیر
API هایی که اغلب داده ها را خوانده اما به ندرت تغییر می دهند
ذخیره سازی یک بافر بین سرعت و ثبات است. ما یک معماری قوی ایجاد می کنیم که در آن هر تماس مجدد سریع تر است و هر بار پیک تحت کنترل است.