سؤال

كيفية ضبط حجم ذاكرة التخزين المؤقت L1 أو L2. أنا قلق من زيادة حجم ذاكرة التخزين المؤقت. إحدى الطرق هي تحديد مهلة ذاكرة التخزين المؤقت ولكني أريد أن أعرف هل من الممكن إجراء قيود لحجم ذاكرة التخزين المؤقت أم لا؟

RGDS NAVID

هل كانت مفيدة؟

المحلول

كيفية ضبط حجم ذاكرة التخزين المؤقت L1

لا يمكنك. الخيار الوحيد هو clear سياق الثبات يدويًا على فترات منتظمة إذا كنت تريد "التحكم" (في الواقع ، clear عدواني للغاية ، فهو يزيل جميع الكيانات) حجمه.

كيفية ضبط حجم ذاكرة التخزين المؤقت L2

هذا يعتمد على مزود ذاكرة التخزين المؤقت الأساسية. بمعنى آخر ، يتم ذلك عن طريق تكوين تطبيق ذاكرة التخزين المؤقت L2. على سبيل المثال ، لدى ehcache maxElementInMemory معامل.


ماذا يحدث في L1؟! ما مقدار الكيانات في الذاكرة مع مرور الوقت؟ ث/س أي قيود؟!

بقدر ما وضعت فيه ، حتى نهاية المطاف OutOfMemoryError, ، وبالتالي الحاجة إلى clear صراحة:

  • في وظائف الدُفعات الكبيرة (حتى لو حدثت في معاملة واحدة)
  • إذا كانت طويلة العمر EntityManager يستخدم

لكن النمط المعتاد هو استخدام قصير العمر EntityManager ومعظم حالات الاستخدام ليست وظائف دفعة ، لذا فإن هذا ليس مصدر قلق.

أنظر أيضا

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top