כאן רואים את התיעוד של Apigee Edge.
אפשר לעיין בתיעוד של Apigee X.

המדיניות מגדירה איך ערכי המטמון יימחקו מהמטמון.
המדיניות הזו מיועדת לשימוש כללי לצורך שמירה במטמון לטווח קצר. משתמשים בו יחד עם המדיניות אכלוס מטמון (לכתיבת רשומות) ומדיניות חיפוש מטמון (לקריאת רשומות של מטמון).
למידע על שמירת התגובות של משאבים בקצה העורפי, תוכלו לעיין במדיניות בנושא מטמון של תגובה.
הפניה לרכיב
בטבלה הבאה מפורטים הרכיבים שאפשר להגדיר במדיניות הזו.
<InvalidateCache async="false" continueOnError="false" enabled="true" name="policy-name"> <DisplayName>Policy Name</DisplayName> <CacheKey> <Prefix>prefix_string</Prefix> <KeyFragment ref="variable_reference"/> <KeyFragment>fragment_string</KeyFragment> </CacheKey> <!-- Omit this element if you're using the included shared cache. --> <CacheResource>cache_to_use</CacheResource> <Scope>scope_enumeration</Scope> <CacheContext> <APIProxyName>application_that_added_the_entry</APIProxyName> <ProxyName>proxy_for_which_data_was_cached</ProxyName> <TargetName>endpoint_for_which_data_was_cached</TargetName> </CacheContext> <PurgeChildEntries>true_to_purge_all_child_entries</PurgeChildEntries> </InvalidateCache>
מאפייני <InVerifyCache>
הטבלה הבאה מפרטת מאפיינים המשותפים לכל רכיבי ההורה של המדיניות:
מאפיין | תיאור | ברירת המחדל | נוכחות |
---|---|---|---|
name |
השם הפנימי של המדיניות. הערך של המאפיין אפשר להשתמש ברכיב |
לא רלוונטי | נדרש |
continueOnError |
יש להגדיר את הערך המדיניות מקבלת את הערך |
false | אופציונלי |
enabled |
יש להגדיר את המדיניות מגדירים את |
true | אופציונלי |
async |
המאפיין הזה הוצא משימוש. |
false | הוצא משימוש |
רכיב <DisplayName>
אפשר להשתמש במאפיין הזה בנוסף למאפיין name
, כדי להוסיף תווית למדיניות בעורך ה-proxy של ממשק המשתמש לניהול, ולהשתמש בשם בשפה טבעית אחרת.
<DisplayName>Policy Display Name</DisplayName>
ברירת המחדל |
לא רלוונטי אם משמיטים את הרכיב הזה, המערכת תשתמש בערך שמוגדר במאפיין |
---|---|
נוכחות | אופציונלי |
Type | String |
רכיב <CacheContext>/<APIProxyName>
מציינת את שם האפליקציה שהוסיפה את הרשומה של המטמון.
<APIProxyName>application_that_added_the_entry</APIProxyName>
מאפיינים
מאפיין | תיאור | ברירת המחדל | נוכחות | סוג |
---|---|---|---|---|
שופט | משתנה עם שם האפליקציה. | לא רלוונטי | אופציונלי | מחרוזת |
רכיב <CacheContext>
המדיניות קובעת איך לבנות מפתח מטמון כשלא צוין ערך רכיב Prefix
, או לנקות רשומות במטמון שנוספו על ידי שרת proxy אחר ל-API.
<CacheContext> <APIProxyName ref="variable_name">application_that_added_the_entry</APIProxyName> <TargetName ref="variable_name">endpoint_for_which_data_was_cached</TargetName> <ProxyName ref="variable_name">proxy_for_which_data_was_cached</ProxyName> </CacheContext>
משמש ליצירת CacheKey. הערכים של APIProxyName, ProxyName ו-TargetName נדרשים כשלא נעשה שימוש בקידומת CacheKey (כלומר, קידומת מותאמת אישית) כדי לנקות רשומות מטמון שנוספו על ידי שרת proxy אחר של API.
רכיב <CacheKey>
מגדירה מצביע ייחודי לקטע נתונים המאוחסן במטמון.
<CacheKey> <Prefix>string</Prefix> <KeyFragment ref="variable_name" /> <KeyFragment>literal_string</KeyFragment> </CacheKey>
ברירת מחדל: |
לא רלוונטי |
נוכחות: |
חובה |
סוג: |
לא רלוונטי |
<CacheKey>
יוצר את השם של כל חלק מהנתונים שנשמר במטמון.
בזמן הריצה, ערכי <KeyFragment>
מתווספים לפני ערך הרכיב <Scope>
או ערך <Prefix>
. לדוגמה, מתקבל מפתח מטמון של UserToken__apiAccessToken__
<value_of_client_id>:
<CacheKey> <Prefix>UserToken</Prefix> <KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" /> </CacheKey>
צריך להשתמש ברכיב <CacheKey>
בשילוב עם
<Prefix>
ו-<Scope>
. מידע נוסף זמין במאמר עבודה עם מפתחות מטמון.
הרכיב <CacheResource>
ההגדרה קובעת את המטמון שבו יש לאחסן הודעות.
יש להשמיט את הרכיב הזה לחלוטין אם המדיניות הזו (וכללי המדיניות התואמים של PopulateCache ו-LookupCache) משתמשים במטמון המשותף הכלול.
<CacheResource>cache_to_use</CacheResource>
ברירת מחדל: |
לא רלוונטי |
נוכחות: |
אופציונלי |
סוג: |
String |
למידע נוסף על הגדרת קבצים שמורים, תוכלו לקרוא את המאמר יצירה ועריכה של מטמון של סביבה.
רכיב <CacheKey>/<KeyFragment>
מציינת ערך שצריך להיכלל במפתח המטמון, כדי ליצור מרחב שמות להתאמה של בקשות לתגובות שנשמרו במטמון.
<KeyFragment ref="variable_name"/> <KeyFragment>literal_string</KeyFragment>
ברירת מחדל: |
לא רלוונטי |
נוכחות: |
אופציונלי |
סוג: |
לא רלוונטי |
זה יכול להיות מפתח (שם סטטי שאתם מספקים) או ערך (ערך דינמי שהוגדר על ידי הפניה למשתנה). כל המקטעים שצוינו יחד (בנוסף לקידומת) משורשרים כדי ליצור את מפתח המטמון.
<KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" />
צריך להשתמש ברכיב <KeyFragment>
בשילוב עם
<Prefix>
ו-<Scope>
. מידע נוסף זמין במאמר עבודה עם מפתחות מטמון.
מאפיינים
מאפיין | תיאור | ברירת המחדל | נוכחות | סוג |
---|---|---|---|---|
שופט | המשתנה שממנו יש לקבל את הערך. אין להשתמש באפשרות הזו אם הרכיב הזה מכיל ערך ליטראלי. | לא רלוונטי | אופציונלי | מחרוזת |
רכיב <CacheKey>/<Prefix>
מציינת ערך לשימוש כקידומת של מפתח מטמון.
<Prefix>prefix_string</Prefix>
ברירת מחדל: |
לא רלוונטי |
נוכחות: |
אופציונלי |
סוג: |
String |
אם רוצים לציין ערך משלכם, ולא ערך סופר <Scope>
, צריך להשתמש בערך הזה במקום ב-<Scope>
. אם מוגדר, <Prefix>
מצרף את הערך של מפתח המטמון לתחילת הערכים שנכתבים במטמון. ערך של רכיב <Prefix>
מבטל ערך של רכיב <Scope>
.
צריך להשתמש ברכיב <Prefix>
בשילוב עם
<CacheKey>
ו-<Scope>
. מידע נוסף זמין במאמר עבודה עם מפתחות מטמון.
רכיב <cacheContext>/<ProxyName>
מציין את שם שרת ה-proxy שעבורו הנתונים נשמרו.
<ProxyName>proxy_for_which_data_was_cached</ProxyName>
ברירת מחדל: |
לא רלוונטי |
נוכחות: |
אופציונלי |
סוג: |
String |
מאפיינים
מאפיין | תיאור | ברירת המחדל | נוכחות | סוג |
---|---|---|---|---|
שופט | המשתנה שממנו יש לקבל את הערך. אין להשתמש באפשרות הזו אם הרכיב הזה מכיל ערך ליטראלי. | לא רלוונטי | אופציונלי | מחרוזת |
הרכיב <PurgeChildEntries>
true
כדי למחוק לצמיתות רשומות במטמון שמשתפים את הערך שהוגדר על ידי
רכיב <KeyFragment>
שהוגדר למדיניות הזו. ערכים בחלקים אחרים של מפתח המטמון, כמו ברכיבי <Prefix>
, לא מובאים בחשבון.
שימו לב שצריך לציין את הרכיב <KeyFragment>
. אם הוא לא נכלל,
הגדרת True עבור <PurgeChildEntries>
עלולה לגרום למחיקה של כל הרשומות
במטמון.
ביטול התוקף של כל הרשומות במטמון של אותו ערך מקטע המפתח יכול להיות דרך מועילה למחיקה לצמיתות של מספר רשומות קשורות בבת אחת.
<PurgeChildEntries>true_to_purge_child_entries</PurgeChildEntries>
ברירת מחדל: |
false |
נוכחות: |
אופציונלי |
סוג: |
Boolean |
רכיב <היקף>
רשימה המשמשת ליצירת קידומת למפתח מטמון כאשר לא סופק רכיב <Prefix>
ברכיב <CacheKey>
.
<Scope>scope_enumeration</Scope>
ברירת מחדל: |
'בלעדי' |
נוכחות: |
אופציונלי |
סוג: |
String |
ההגדרה <Scope>
קובעת מפתח מטמון שמתווסף בתחילת הערך של <Scope>
. לדוגמה, מפתח מטמון יקבל את הטופס הבא כשההיקף מוגדר כ-Exclusive
:
orgName__envName__applicationName__deployedRevisionNumber__proxy|TargetName__ [ serializedCacheKey ].
אם יש רכיב <Prefix>
ברכיב <CacheKey>
, הוא מחליף את ערך הרכיב <Scope>
. הערכים החוקיים כוללים את המספרים הבאים.
צריך להשתמש ברכיב <Scope>
בשילוב עם
<CacheKey>
ו-<Prefix>
. מידע נוסף זמין במאמר עבודה עם מפתחות מטמון.
ערכים קבילים
ערך ההיקף | תיאור |
---|---|
Global |
מפתח המטמון משותף לכל שרתי ה-API של ה-API שפרוסים בסביבה. מפתח המטמון מתווסף בתחילת הפורמט orgName __ envName __. אם מגדירים רשומת |
Application |
שם ה-proxy של ה-API משמש כקידומת. מפתח המטמון מתווסף בתחילת הפורמט orgName__envName__applicationName. |
Proxy |
הגדרת ProxyEndpoint משמשת כקידומת. מפתח המטמון מתווסף בתחילת הטופס orgName__envName__applicationName__deployedRevisionNumber__proxyEndpointName . |
Target |
הגדרת TargetEndpoint משמשת כקידומת. מפתח המטמון מצורף מראש בפורמט orgName__envName__applicationName__deployedRevisionNumber__targetEndpointName . |
Exclusive |
ברירת מחדל. זוהי השיטה הספציפית ביותר, ולכן היא מהווה סיכון מינימלי להתנגשויות של מרחב שמות במטמון נתון. הקידומת היא אחת משתי צורות:
מפתח המטמון מצורף מראש בטופס orgName__envName__applicationName__deployedRevisionNumber__proxyNameITargetName לדוגמה, המחרוזת המלאה עשויה להיראות כך: apifactory__test__weatherapi__16__default__apiAccessToken. |
הרכיב <CacheContext>/<TargetName>
ההגדרה קובעת את השם של נקודת הקצה (endpoint) של היעד שעבורה הנתונים נשמרו.
<TargetName>endpoint_for_which_data_was_cached</TargetName>
ברירת מחדל: |
לא רלוונטי |
נוכחות: |
אופציונלי |
סוג: |
String |
מאפיינים
מאפיין | תיאור | ברירת המחדל | נוכחות | סוג |
---|---|---|---|---|
שופט | המשתנה שממנו יש לקבל את הערך. אין להשתמש באפשרות הזו אם הרכיב הזה מכיל ערך ליטראלי. | לא רלוונטי | אופציונלי | מחרוזת |
הערות על השימוש
שמירה במטמון למטרות כלליות באמצעות המדיניות בנושא אכלוס מטמון, המדיניות של LookupCache
וכן
המדיניות InאימותCache נעשה שימוש במטמון שהגדרתם או במטמון משותף שכלול
כברירת מחדל. ברוב המקרים, המטמון המשותף הבסיסי אמור לענות על הצרכים שלכם. כדי להשתמש במטמון הזה,
צריך להשמיט את הרכיב <CacheResource>
.
למידע נוסף על הגדרת קבצים שמורים, תוכלו לקרוא את המאמר יצירה ועריכה של מטמון של סביבה. מידע נוסף על מאגר הנתונים הבסיסי זמין במאמר נתונים פנימיים של מטמון.
קודי שגיאה
בקטע הזה מתוארות הודעות השגיאה ומשתני הזרימה שמוגדרים כאשר המדיניות הזו מפעילה שגיאה. חשוב לדעת את המידע הזה כדי לדעת אם אתם מפתחים כללי כשל עבור שרת proxy. מידע נוסף זמין במאמרים מה צריך לדעת על שגיאות מדיניות ואיך לטפל בשגיאות.
קידומת קוד שגיאה
לא רלוונטי
שגיאות בזמן ריצה
המדיניות הזו לא גורמת לשגיאות בזמן ריצה.
שגיאות פריסה
השגיאות האלה עשויות להתרחש במהלך פריסת שרת proxy שמכיל את המדיניות הזו.
שם השגיאה | הסיבה | תיקון |
---|---|---|
InvalidCacheResourceReference |
השגיאה הזו מופיעה אם האלמנט <CacheResource> במדיניות IndefCache מוגדר לשם שלא קיים בסביבה שבה נפרס שרת ה-API של ה-API. |
build |
CacheNotFound |
השגיאה הזו מופיעה אם המטמון הספציפי שצוין בהודעת השגיאה לא נוצר ברכיב ספציפי של מעבד ההודעות. | build |
משתני כשל
לא רלוונטי
דוגמה לשגיאה
לא רלוונטי