توفّر Apigee Edge إمكانية التخزين المؤقت لاستمرار البيانات. في كل الطلبات. عند تلقّي بيانات واجهة برمجة التطبيقات، يتم تخزينها في ذاكرة التخزين المؤقت لفترة زمنية قصيرة. ثم حذفها. الحد الأقصى لوقت الاحتفاظ بجزء من البيانات قبل حذفها اسم انتهاء الصلاحية، أو مدة البقاء (TTL) لذاكرة التخزين المؤقت. لكل ذاكرة تخزين مؤقت مدة بقاء افتراضية، ولكن في بعض الحالات قد تحتاج إلى تغيير قيمة مدة البقاء (TTL) لتحسين أداء واجهة برمجة التطبيقات.
أنواع ذاكرة التخزين المؤقت
يتم تخزين بيانات واجهة برمجة التطبيقات في نوعين من ذاكرة التخزين المؤقت:
- المستوى 1 (L1): ذاكرة التخزين المؤقت في الذاكرة التي تتميز بإمكانية الوصول بشكل أسرع ولكن مساحة التخزين المتاحة أقل القدرة.
- المستوى 2 (L2): ذاكرة تخزين مؤقت ثابتة في مخزن بيانات Cassandra، وتكون أبطأ ولكن مع سعة تخزين أكبر.
عندما يصل إدخال البيانات في ذاكرة التخزين المؤقت L1 إلى L1 TTL، يتم حذفه. ومع ذلك، نسخة من الإدخال في ذاكرة التخزين المؤقت L2 (التي تحتوي على مدة بقاء أطول من ذاكرة التخزين المؤقت L1)، حيث يظل الوصول إليها متاحًا من قبل برامج معالجة الرسائل الأخرى. راجع في الذاكرة و مستويات ذاكرة التخزين المؤقت الدائمة لمزيد من التفاصيل حول ذاكرة التخزين المؤقت.
الحد الأقصى لمدة البقاء L1
في Edge for Private Cloud، يمكنك ضبط الحد الأقصى لمدة بقاء ذاكرة التخزين المؤقت L1 لكل رسالة.
معالج بيانات يستخدم خاصية Max L1 TTL (conf_cache_max.l1.ttl.in.seconds
).
ستنتهي صلاحية إدخال في ذاكرة التخزين المؤقت L1 بعد الوصول إلى قيمة الحد الأقصى لمدة البقاء L1 وسيتم حذفه.
ملاحظات:
- بشكل تلقائي، يتم إيقاف Max L1 TTL (بالقيمة
-1
)، وفي هذه الحالة، يتم تحديد مدة البقاء (TTL) الخاصة بأحد الإدخالات في ذاكرة التخزين المؤقت L1 من خلال سياسة Populatecache إعدادات انتهاء الصلاحية (لكل من ذاكرة التخزين المؤقت من المستوى 1 و2). - لا يكون للقيمة القصوى L1 TTL تأثير إلا إذا كانت قيمتها أصغر من انتهاء صلاحية ذاكرة التخزين المؤقت الإجمالية.
ضبط الحد الأقصى لمدة البقاء L1
يمكنك ضبط الحد الأقصى لمدة البقاء L1 على معالج الرسائل كما يلي:
- افتح
ملف إعداد
/opt/apigee/customer/application/message-processor.properties
في أحد المحررين. إذا لم يكن الملف متوفّرًا، أنشئه. - اضبط خاصية Max L1 TTL على القيمة المطلوبة:
conf_cache_max.l1.ttl.in.seconds = 180
ننصحك باستخدام القيمة
180
ثانية. - تأكّد من أنّ ملف الخصائص يملكه "apigee". المستخدم:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- أعِد تشغيل معالج الرسائل:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
إرشادات حول ضبط الحد الأقصى لمدة L1 TTL
عند ضبط الحد الأقصى لمدة البقاء L1، يُرجى مراعاة الإرشادات التالية:
- إخفاق استدعاء إجراء عن بُعد: إذا لاحظت أخطاء استدعاء الإجراء عن بُعد (RPC) بين
معالِجات الرسائل (MPs)—
خاصةً عبر مراكز بيانات متعددة -
من المحتمل أن تحتوي ذاكرة التخزين المؤقت L1 على إدخالات قديمة، وستظل قديمة إلى أن يتم حذفها.
من ذاكرة التخزين المؤقت L1. يؤدي ضبط الحد الأقصى لمدة البقاء L1 على قيمة أقل إلى فرض أي
ستتم إزالة الإدخالات القديمة واستبدالها بقيم جديدة من ذاكرة التخزين المؤقت L2 في وقت أقرب.
الحل: خفضconf_cache_max.l1.ttl.in.seconds
. - التحميل الزائد على Casandra: عند ضبط قيمة لإدخالات ذاكرة التخزين المؤقت L1 Max L1 TTL
ستنتهي صلاحيتها في كثير من الأحيان،
يؤدي ذلك إلى حدوث المزيد من الأخطاء في ذاكرة التخزين المؤقت للمستوى الأول والمزيد من نتائج ذاكرة التخزين المؤقت للمستوى الثاني. ونظرًا لأنه سيتم تشغيل ذاكرة التخزين المؤقت L2 في كثير من الأحيان،
ستتحمّل "كاساندرا" عبئًا زائدًا.
الحل: زيادةconf_cache_max.l1.ttl.in.seconds
كقاعدة عامة، اضبط Max L1 TTL على قيمة توازن بين التكرار من استدعاء إجراء عن بُعد (RPC) لا يتخطّى بين أعضاء البرلمان مع التحميل المحتمل على كاساندرا.
ننصحك بضبط القيمة conf_cache_max.l1.ttl.in.seconds
على ما لا يقلّ عن
ثانيتان (180
) (3 دقائق) لمواصلة المعالجة بسلاسة.