أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
تضبط هذه السمة كيفية استرداد القيم المخزّنة مؤقتًا في وقت التشغيل.
هذه السياسة مخصّصة للاستخدام في التخزين المؤقت القصير الأجل للأغراض العامة. يتم استخدامها مع سياسة ملء ذاكرة التخزين المؤقت (لكتابة الإدخالات) وسياسة إبطال ذاكرة التخزين المؤقت (لإبطال الإدخالات).
للاطّلاع على معلومات حول تخزين ردود موارد الخلفية مؤقتًا، راجِع سياسة ذاكرة التخزين المؤقت للردود.
مرجع العنصر
في ما يلي قائمة بالعناصر التي يمكنك ضبطها في هذه السياسة.
<LookupCache async="false" continueOnError="false" enabled="true" name="Lookup-Cache-1">
<DisplayName>Lookup Cache 1</DisplayName>
<Properties/>
<CacheKey>
<Prefix/>
<KeyFragment ref=""/>
</CacheKey>
<!-- Omit this element if you're using the included shared cache. -->
<CacheResource/>
<CacheLookupTimeoutInSeconds/>
<Scope>Exclusive</Scope>
<AssignTo>flowVar</AssignTo>
</LookupCache>يتم تضمين ذاكرة تخزين مؤقت مشتركة تلقائيًا. لاستخدام ذاكرة التخزين المؤقت المشترَكة، احذف العنصر <CacheResource> في إعدادات هذه السياسة.
لمزيد من المعلومات حول مخزن البيانات الأساسي، اطّلِع على تفاصيل ذاكرة التخزين المؤقت. لمزيد من المعلومات حول إعدادات التخزين المؤقت، يُرجى الاطّلاع على إنشاء ذاكرة تخزين مؤقت للبيئة وتعديلها.
سمات <LookupCache>
يصف الجدول التالي السمات المشتركة بين جميع العناصر الرئيسية للسياسة:
| السمة | الوصف | تلقائي | التواجد في المنزل |
|---|---|---|---|
name |
الاسم الداخلي للسياسة. يمكن لقيمة السمة يمكنك، إذا أردت، استخدام العنصر |
لا ينطبق | مطلوب |
continueOnError |
اضبط القيمة على يمكنك ضبط القيمة على |
خطأ | اختياري |
enabled |
اضبط القيمة على اضبط القيمة على |
صحيح | اختياري |
async |
تم إيقاف هذه السمة نهائيًا. |
خطأ | منهي العمل به |
<DisplayName> عنصر
استخدِمه مع السمة name لتصنيف السياسة في
إدارة خادم وكيل لواجهة المستخدم باسم مختلف بلغة طبيعية.
<DisplayName>Policy Display Name</DisplayName>
| تلقائي |
لا ينطبق إذا لم تستخدم هذا العنصر، سيتم ضبط قيمة السمة |
|---|---|
| التواجد في المنزل | اختياري |
| النوع | سلسلة |
العنصر <AssignTo>
تحدّد هذه السمة المتغيّر الذي يتم تعيين إدخال ذاكرة التخزين المؤقت فيه بعد استرداده من ذاكرة التخزين المؤقت. يجب أن يكون المتغير قابلاً للكتابة. إذا لم يستردّ البحث في ذاكرة التخزين المؤقت قيمة، لن يتم ضبط المتغيّر.
<AssignTo>variable_to_receive_cached_value</AssignTo>
|
القيمة التلقائية: |
لا ينطبق |
|
الحضور: |
مطلوب |
|
النوع: |
سلسلة |
العنصر <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>. لمزيد من المعلومات، يُرجى الاطّلاع على العمل باستخدام مفاتيح ذاكرة التخزين المؤقت.
العنصر <CacheLookupTimeoutInSeconds>
تحدِّد هذه السمة عدد الثواني التي سيتم بعدها اعتبار البحث غير الناجح في ذاكرة التخزين المؤقت على أنّه البيانات غير متوفرة في ذاكرة التخزين المؤقت. وفي حال حدوث ذلك، يستأنف التدفق مسار البيانات غير المتوفرة في ذاكرة التخزين المؤقت.
<CacheLookupTimeoutInSeconds>30</CacheLookupTimeoutInSeconds>
|
القيمة التلقائية: |
30 |
|
الحضور: |
اختياري |
|
النوع: |
عدد صحيح |
عنصر <CacheResource>
تحدّد هذه السمة ذاكرة التخزين المؤقت التي يجب تخزين الرسائل فيها.
احذف هذا العنصر تمامًا إذا كانت هذه السياسة (وسياسات PopulateCache وInvalidateCache ذات الصلة) تستخدم ذاكرة التخزين المؤقت المشتركة المضمّنة.
<CacheResource>cache_to_use</CacheResource>
|
القيمة التلقائية: |
لا ينطبق |
|
الحضور: |
اختياري |
|
النوع: |
سلسلة |
لمزيد من المعلومات حول إعداد الذاكرات المؤقتة، يُرجى الاطّلاع على إنشاء ذاكرة مؤقتة للبيئة وتعديلها.
العنصر <CacheKey>/<KeyFragment>
تحدّد هذه السمة قيمة يجب تضمينها في مفتاح ذاكرة التخزين المؤقت، ما يؤدي إلى إنشاء مساحة اسم لمطابقة الطلبات مع الردود المخزّنة مؤقتًا.
<KeyFragment ref="variable_name"/> <KeyFragment>literal_string</KeyFragment>
|
القيمة التلقائية: |
لا ينطبق |
|
الحضور: |
اختياري |
|
النوع: |
لا ينطبق |
يمكن أن يكون ذلك مفتاحًا (اسمًا ثابتًا تقدّمه) أو قيمة (إدخالاً ديناميكيًا يتم ضبطه من خلال الإشارة إلى متغيّر). يتم دمج جميع الأجزاء المحدّدة (بالإضافة إلى البادئة) لإنشاء مفتاح ذاكرة التخزين المؤقت.
<KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" />
يمكنك استخدام العنصر <KeyFragment> مع السمتَين <Prefix> و<Scope>. لمزيد من المعلومات، يُرجى الاطّلاع على العمل باستخدام مفاتيح ذاكرة التخزين المؤقت.
السمات
| السمة | النوع | تلقائي | مطلوب | الوصف |
|---|---|---|---|---|
| ref | سلسلة | لا |
المتغيّر الذي سيتم الحصول على القيمة منه. يجب عدم استخدامها إذا كان هذا العنصر يتضمّن قيمة حرفية. |
العنصر <CacheKey>/<Prefix>
تحدّد هذه السمة قيمة لاستخدامها كبادئة لمفتاح ذاكرة التخزين المؤقت.
<Prefix>prefix_string</Prefix>
|
القيمة التلقائية: |
لا ينطبق |
|
الحضور: |
اختياري |
|
النوع: |
سلسلة |
استخدِم هذه القيمة بدلاً من <Scope> عندما تريد تحديد قيمة خاصة بك بدلاً من قيمة <Scope> مُعدَّدة. في حال تحديدها، تضيف <Prefix> قيمة مفتاح ذاكرة التخزين المؤقت للإدخالات التي تتم كتابتها في ذاكرة التخزين المؤقت. تتجاوز قيمة العنصر <Prefix> قيمة العنصر <Scope>.
يمكنك استخدام العنصر <Prefix> مع السمتَين <CacheKey> و<Scope>. لمزيد من المعلومات، يُرجى الاطّلاع على العمل باستخدام مفاتيح ذاكرة التخزين المؤقت.
العنصر <Scope>
تعداد يُستخدَم لإنشاء بادئة لمفتاح ذاكرة التخزين المؤقت عندما لا يتم توفير عنصر <Prefix>
في العنصر <CacheKey>.
<Scope>scope_enumeration</Scope>
|
القيمة التلقائية: |
"محتوى حصري" |
|
الحضور: |
اختياري |
|
النوع: |
سلسلة |
يحدّد الإعداد <Scope> مفتاح ذاكرة تخزين مؤقت يتم إلحاقه وفقًا لقيمة <Scope>. على سبيل المثال، سيتّخذ مفتاح ذاكرة التخزين المؤقت الشكل التالي عندما يتم ضبط النطاق على Exclusive:
orgName__envName__applicationName__proxy|TargetName__
[ serializedCacheKey ].
إذا كان العنصر <Prefix> متوفّرًا في <CacheKey>، سيحلّ محل قيمة العنصر <Scope>. تشمل القيم الصالحة التعدادات أدناه.
يمكنك استخدام العنصر <Scope> مع السمتَين <CacheKey> و<Prefix>. لمزيد من المعلومات، يُرجى الاطّلاع على العمل باستخدام مفاتيح ذاكرة التخزين المؤقت.
القِيم المقبولة
Global |
تتم مشاركة مفتاح ذاكرة التخزين المؤقت بين جميع خوادم وكيل واجهة برمجة التطبيقات التي تم نشرها في البيئة. يتم إلحاق مفتاح ذاكرة التخزين المؤقت بالتنسيق orgName __ envName __. إذا حدّدت إدخال |
Application |
يتم استخدام اسم خادم وكيل لواجهة برمجة التطبيقات كبادئة. يتم إلحاق مفتاح ذاكرة التخزين المؤقت بالتنسيق orgName__envName__applicationName. |
Proxy |
يتم استخدام إعداد ProxyEndpoint كبادئة. يتم إلحاق مفتاح ذاكرة التخزين المؤقت بالتنسيق orgName__envName__applicationName__proxyEndpointName . |
Target |
يتم استخدام إعدادات TargetEndpoint كبادئة. يتم إلحاق مفتاح ذاكرة التخزين المؤقت في النموذج orgName__envName__applicationName__targetEndpointName . |
Exclusive |
تلقائي: وهذا هو الأكثر تحديدًا، وبالتالي يقلل من خطر حدوث تعارضات في مساحة الاسم ضمن ذاكرة تخزين مؤقت معيّنة. تتّخذ البادئة أحد الشكلَين التاليَين:
يتم إلحاق مفتاح ذاكرة التخزين المؤقت بالتنسيق orgName__envName__applicationName__proxyNameITargetName على سبيل المثال، قد يبدو السلسلة الكاملة على النحو التالي: apifactory__test__weatherapi__16__default__apiAccessToken |
ملاحظات الاستخدام
استخدِم هذه السياسة للتخزين المؤقّت للأغراض العامة. أثناء وقت التشغيل، تستردّ سياسة LookupCache قيمة من ذاكرة التخزين المؤقت، وتعيّن القيمة للمتغيّر الذي تحدّده باستخدام العنصر AssignTo (إذا لم يتم استرداد أي قيمة، لن يتم ضبط المتغيّر). يبحث عن القيمة استنادًا إلى مفتاح ذاكرة تخزين مؤقت تم إنشاؤه من خلال الإعدادات التي تجمع بين عناصر CacheKey وScope. بعبارة أخرى، لاسترداد قيمة معيّنة تمت إضافتها إلى ذاكرة التخزين المؤقت من خلال سياسة PopulateCache، يجب أن تتضمّن سياسة LookupCache عناصر مرتبطة بمفتاح ذاكرة التخزين المؤقت تم إعدادها بالطريقة نفسها التي تم بها إعداد سياسة PopulateCache.
يستخدم التخزين المؤقت للأغراض العامة مع سياسة Populate Cache وسياسة LookupCache وسياسة InvalidateCache إما ذاكرة تخزين مؤقت تقوم بإعدادها أو ذاكرة تخزين مؤقت مشتركة يتم تضمينها تلقائيًا. في معظم الحالات، يجب أن يفي التخزين المؤقت المشترك الأساسي باحتياجاتك. لاستخدام ذاكرة التخزين المؤقت التلقائية، ما عليك سوى حذف العنصر <CacheResource>.
لمزيد من المعلومات حول إعداد الذاكرات المؤقتة، يُرجى الاطّلاع على إنشاء ذاكرة مؤقتة للبيئة وتعديلها. لمزيد من المعلومات حول مخزن البيانات الأساسي، اطّلِع على تفاصيل ذاكرة التخزين المؤقت.
متغيّرات سير العمل
يمكن استخدام متغيرات التدفق لضبط السلوك الديناميكي لوقت التشغيل للسياسات وعمليات التدفق، استنادًا إلى عناوين HTTP أو محتوى الرسالة أو السياق المتاح في التدفق. لمزيد من المعلومات حول متغيرات التدفق، يُرجى الاطّلاع على مرجع المتغيرات.
تتوفّر متغيّرات Flow المحدّدة مسبقًا التالية بعد تخصيص سلوك ذاكرة التخزين المؤقت التي تحدّدها في سياسة LookupCache.
| المتغيّرات | النوع | الإذن | الوصف |
|---|---|---|---|
| lookupcache.{policy-name}.cachename | سلسلة | قراءة فقط | تعرض هذه السمة اسم ذاكرة التخزين المؤقت المستخدَمة في السياسة. |
| lookupcache.{policy-name}.cachekey | سلسلة | قراءة فقط | تعرِض هذه السمة المفتاح المستخدَم. |
| lookupcache.{policy-name}.cachehit | منطقي | قراءة فقط | صحيح، إذا عثرت السياسة على قيمة لمفتاح التخزين المؤقت المحدّد. |
| lookupcache.{policy-name}.assignto | سلسلة | قراءة فقط | تعرِض هذه السمة المتغير الذي تم تعيين ذاكرة التخزين المؤقت له. |
رموز الخطأ
يوضِّح هذا القسم رسائل الخطأ ومتغيّرات التدفق التي يتم تحديدها عندما تؤدي هذه السياسة إلى ظهور خطأ. هذه المعلومات مهمة لمعرفة ما إذا كنت تعمل على تطوير قواعد خطأ لخادم وكيل. لمزيد من المعلومات، يمكنك الاطّلاع على المعلومات التي يجب معرفتها عن الأخطاء المتعلقة بالسياسات وأخطاء المعالجة.
بادئة رمز الخطأ
لا ينطبق
أخطاء في وقت التشغيل
لا تؤدي هذه السياسة إلى حدوث أي أخطاء في وقت التشغيل.
أخطاء النشر
يمكن أن تحدث هذه الأخطاء عند نشر خادم وكيل يحتوي على هذه السياسة.
| اسم الخطأ | السبب | إصلاح |
|---|---|---|
InvalidCacheResourceReference |
يحدث هذا الخطأ عند ضبط العنصر <CacheResource> على اسم غير متوفّر في البيئة التي يتم فيها نشر الخادم الوكيل لواجهة برمجة التطبيقات. |
build |
InvalidTimeout |
وفي حال ضبط العنصر <CacheLookupTimeoutInSeconds> على رقم سالب، سيتعذّر نشر الخادم الوكيل لواجهة برمجة التطبيقات. |
build |
CacheNotFound |
يحدث هذا الخطأ إذا لم يتم إنشاء ذاكرة التخزين المؤقت المحددة المذكورة في رسالة الخطأ على مكون محدد لمعالجة الرسائل. | build |
متغيرات الخطأ
لا ينطبق
مثال على الردّ على الخطأ
لا ينطبق