נתונים פנימיים של מטמון

כרגע מוצג התיעוד של Apigee Edge.
כניסה למסמכי התיעוד של Apigee X.
מידע

בנושא הזה מתואר אופן הפעולה של המטמון במסגרת כללי המדיניות, כמו המדיניות בנושא אכלוס מטמון, המדיניות של LookupCache, המדיניות בנושא ביטול המטמון והמדיניות בנושא מטמון תגובה.

קבצים שמורים של סביבה ושל שיתוף

לכל מדיניות שמירה במטמון יש אפשרות להשתמש באחד משני סוגים של מטמון: מטמון משותף כלול שלאפליקציות שלכם יש גישה אליו ומטמון אחד או יותר שאתם יוצרים ברמת הסביבה.

  • מטמון משותף: כברירת מחדל, לשרת ה-proxy יש גישה למטמון משותף אחד בכל סביבה. המטמון המשותף פועל היטב בתרחישים בסיסיים לדוגמה.

    אפשר לעבוד עם המטמון המשותף רק באמצעות מדיניות השמירה במטמון, ולא באמצעות ה-API לניהול. כדי שמדיניות השמירה במטמון תשתמש במטמון המשותף, פשוט צריך להשמיט את רכיב <CacheResource> של המדיניות.

  • מטמון סביבה: כשתרצו להגדיר מאפייני מטמון עם ערכים שתבחרו, תוכלו ליצור מטמון ברמת הסביבה. למידע נוסף על יצירת מטמון, תוכלו לקרוא את המאמר יצירה ועריכה של מטמון של סביבה.

    כאשר אתם יוצרים מטמון של סביבה, אתם מגדירים את מאפייני ברירת המחדל שלו. כדי להגדיר מדיניות שמירה במטמון, אפשר להשתמש במטמון של הסביבה על ידי ציון שם המטמון ברכיב <CacheResource> של המדיניות.

מידע על הצפנה במטמון

Edge for Public Cloud: המטמון מוצפן רק בארגונים שתומכים ב-PCI וב-HIPAA. ההצפנה לארגונים אלה מוגדרת במהלך ניהול ההקצאות של הארגון.

רמות של זיכרון ומטמון קבוע

המטמון המשותף ומטמון הסביבה מבוססים על מערכת בת שתי רמות שמורכבת מרמת זיכרון ומרמה קבועה. המדיניות פועלת עם שתי הרמות כמסגרת משולבת. Edge מנהל את הקשר בין הרמות.

  • רמה 1 היא מטמון בזיכרון (L1) לגישה מהירה. לכל צומת לעיבוד הודעות (MP) יש מטמון זיכרון משלו (שמוטמע מ-Ehcache) כדי להגיב לבקשות בצורה המהירה ביותר.
    • בכל צומת, אחוז מסוים של זיכרון שמור לשימוש של המטמון.
    • כשהזיכרון מגיע למגבלת הזיכרון, Apigee Edge מסיר את רשומות המטמון מהזיכרון (למרות שהן עדיין נשמרות במטמון L2 הקבוע), כדי להבטיח שהזיכרון יישאר זמין לתהליכים אחרים.
    • הרשומות יוסרו לפי סדר הזמן שחלף מאז הגישה האחרונה, והרשומות הישנות ביותר הוסרו ראשונות.
    • הקבצים השמורים האלה מוגבלים גם על ידי מספר הערכים השמורים במטמון.
  • רמה 2 היא מטמון קבוע (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 מחזירה את התגובה בפועל מהיעד ללקוח ומאחסנת את הרשומה במטמון עד שהתוקף שלה יפוג או עד שיבוטל התוקף שלה.
  • כשמדיניות מתעדכנת או מבצעת לא חוקי של ערך מטמון קיים (במדיניות InvalidateCache, PopulateCache או ResponseCache):
    1. מעבד ההודעות שמקבל את הבקשה שולח שידור כדי לעדכן או למחוק את הרשומה במטמון L1 לגבי עצמו ושל כל שאר מעבדי ההודעות בכל האזורים.
      • אם השידור מצליח, כל מקבל עדכונים של מעבד ההודעות או מסיר את הרשומה במטמון L1.
      • אם השידור ייכשל, הערך של המטמון שלא תקף יישאר במטמון L1 במעבדי ההודעות שלא קיבלו את השידור. למעבדי ההודעות האלה יהיו נתונים לא פעילים במטמון L1 עד שיפוג התוקף של אורך החיים (TTL) של הרשומה, או עד שהיא תוסר כשתגיעו למגבלות הזיכרון של מעבד ההודעות.
    2. השידור גם מעדכן או מוחק את הרשומה במטמון L2.

ניהול המגבלות של המטמון

באמצעות קביעת התצורה, תוכל לנהל היבטים מסוימים של המטמון. נפח האחסון הכולל שזמין למטמון בזיכרון מוגבל על ידי משאבי המערכת ולא ניתן להגדיר אותו. האילוצים הבאים חלים על המטמון:

  • מגבלות שונות על המטמון: חלות מגבלות שונות על המטמון, כמו גודל השם והערך, המספר הכולל של המטמון, מספר הפריטים במטמון ותאריך התפוגה.
  • מטמון בזיכרון (L1). לא ניתן להגדיר את מגבלות הזיכרון של המטמון. המגבלות מוגדרות על ידי Apigee לכל מעבד הודעות שמארח מטמון של מספר לקוחות.

    בסביבת ענן מתארח, שבה מטמון הזיכרון של כל הפריסות של הלקוחות מתארח במספר מעבדים משותפים של הודעות, כל מעבד (CPU) כולל סף אחוז זיכרון שניתן להגדרה ב-Apigee, כדי להבטיח שהשמירה במטמון לא צורכת את כל הזיכרון של האפליקציה. כשיש חריגה מהסף של מעבד הודעות מסוים, רשומות המטמון מוסרות מהזיכרון על בסיס השימוש הכי פחות לאחרונה. רשומות שיוצאות מהזיכרון נשארות במטמון L2 עד שהתוקף שלהן פג או עד שהן מבוטלות.

  • מטמון קבוע (L2). רשומות שיוצאות ממטמון הזיכרון נשארות במטמון הקבוע בהתאם להגדרות של אורך חיים שניתנות להגדרה.

אופטימיזציות שניתן להגדיר

בטבלה הבאה מפורטות ההגדרות שאפשר להשתמש בהן כדי לבצע אופטימיזציה של הביצועים של המטמון. אתם יכולים לציין ערכים להגדרות האלה כשאתם יוצרים מטמון חדש של סביבה, כפי שמתואר במאמר יצירה ועריכה של מטמון של סביבה.

ההגדרה התיאור הערות
תוקף הרישיון ההגדרה קובעת את משך החיים של רשומות במטמון. ללא.