تحسين أداء Aspose.PSD باستخدام ذاكرة التخزين المؤقتة قابلة للتخصيص

تحسين الأداء مع ذاكرة التخزين المؤقتة القابلة للتخصيص

يستخدم Aspose.PSD التخزين المؤقت لتخزين البيانات المؤقتة. الآلية سهلة الاستخدام وقابلة للتخصيص وشفافة. تضمن عدم وجود مشاكل في الأداء أثناء معالجة الصور. يشرح هذا المقال كيفية تخصيص ذاكرة التخزين المؤقت مع واجهة برمجة التطبيقات لـ Aspose.PSD لـ Java.

تخصيص ذاكرة التخزين المؤقت

عندما يحتاج العملية إلى تخزين بيانات مؤقتة، يتم تخصيص هذا التخزين في ذاكرة التخزين المؤقت. يمكن أن تكون ذاكرة التخزين المؤقت في الذاكرة أو على القرص ويتم تحديدها من قبل المستخدم. عندما لا تكون البيانات المؤقتة مطلوبة بعد الآن، يتم الإفراج عن المساحة. يمكن تفقد إحصائيات المساحة المخصصة في أي وقت. يمكن تخصيص كيفية تخصيص Aspose.PSD واستخدام التخزين المؤقت. تصف هذه القسم الإعدادات المختلفة وافتراضاتها وتظهر مقتطفات الكود أدناه كيفية استخدامها.

تحديد موقع تخصيص ذاكرة التخزين

لتخصيص كيفية تخصيص مساحة التخزين، قم بتعيين خاصية CacheType. بشكل افتراضي، يتم تخصيص ذاكرة التخزين في الذاكرة وعندما لا تتوفر مساحة كافية في الذاكرة، يتم تخصيصها إلى القرص. يتم التقاط هذا السلوك بواسطة وضع التشغيل التلقائي. وضع التشغيل التلقائي مرن ويزيد من الأداء. هناك أوضاع أخرى أيضًا:

  • وضع CacheOnDiskOnly: التخصيص إلى القرص فقط.
  • وضع CacheInMemoryOnly: التخصيص إلى الذاكرة فقط.

قد يؤدي اختيار وضع CacheOnDiskOnly إلى أداء ضعيف.

تعيين حجم ذاكرة التخزين

قم بتعيين المساحة القصوى (بالبايت) التي يمكن تخصيصها على القرص أو في الذاكرة عن طريق تعيين الخصائص MaxDiskSpaceForCache و MaxMemoryForCache على التوالي. بشكل افتراضي، تكون قيم الاثنين مضبوطة على 0، مما يعني عدم وجود حد أقصى.

التحكم في إعادة تخصيص ذاكرة التخزين المؤقت

إذا لم تكن هناك مساحة كافية متاحة في الذاكرة (كما هو محدد بواسطة الخاصية MaxMemoryForCache) عندما يتم تخصيص تخزين مؤقت جديد، يتم تخصيصه إلى القرص. إذا لم تكن هناك مساحة كافية على القرص، يتم رمي استثناء. عملية تخصيص التخزين المؤقت تنتقل من الذاكرة إلى القرص ولكن ليس العكس. يُستخدم الخاصية ExactReallocateOnly للتحكم في إعادة تخصيص الذاكرة. من المرجح أن يحدث إعادة التخصيص للتخزين المؤقت المخصص مسبقًا. يمكن أن يحدث عندما يتعرف النظام على أن المساحة المخصصة لن تكون كافية. إذا تم تعيين ExactReallocateOnly إلى القيمة الافتراضية، False، يتم تخصيص المساحة إلى نفس الوسط. عندما يتم تعيينه إلى True، لا يمكن أن يتجاوز إعادة التخصيص المساحة القصوى المحددة. في هذه الحالة، يتم الإفراج عن ذاكرة التخزين المؤقت في الذاكرة (التي تتطلب إعادة تخصيص) ويتم تخصيص المساحة الموسعة على القرص.

أمثلة البرنامج