تعديل إعدادات ذاكرة Java

استنادًا إلى متطلبات الزيارات والمعالجة، قد تحتاج إلى تغيير حجم ذاكرة الكومة أو حجم البيانات الوصفية للفئة للعُقد التي تشغّل مكوّنات السحابة الخاصة المستندة إلى Java.

يوضّح هذا القسم أحجام ذاكرة كومة الذاكرة المؤقتة التلقائية والمقترَحة في Java، بالإضافة إلى عملية تغيير الإعدادات التلقائية. أخيرًا، يوضّح هذا القسم كيفية تغيير إعدادات JVM الأخرى باستخدام ملفات الخصائص.

أحجام الذاكرة المؤقتة التلقائية والمُقترَحة

يسرد الجدول التالي أحجام ذاكرة كومة Java التلقائية والمقترَحة لمكوّنات السحابة الخاصة المستندة إلى Java:

المكوّن اسم ملف الخصائص الإعداد التلقائي
حجم الذاكرة المؤقتة
الحجم المقترَح
لذاكرة التجميع
وقت التشغيل
Cassandra timing fixed in amara تم ضبطها تلقائيًا1 تم ضبطها تلقائيًا1
معالج الرسائل message‑processor.properties ‫512 ميغابايت ‫3 غيغابايت - 6 غيغابايت2
جهاز التوجيه router.properties ‫512 ميغابايت ‫512 ميغابايت
"إحصاءات"
خادم Postgres postgres‑server.properties ‫512 ميغابايت ‫512 ميغابايت
خادم Qpid qpid‑server.properties ‫512 ميغابايت من 2 إلى 4 غيغابايت
الإدارة
خادم الإدارة management‑server.properties ‫512 ميغابايت ‫512 ميغابايت
واجهة المستخدِم ui.properties ‫512 ميغابايت ‫512 ميغابايت
SymasLDAP timing fixed in amara تطبيق أصلي3 تطبيق أصلي3
Zookeeper zookeeper.properties ‫2048 ميغابايت ‫2048 ميغابايت
ملاحظات

1 تحسب Cassandra ديناميكيًا الحد الأقصى لحجم الذاكرة المؤقتة عند بدء تشغيلها. في الوقت الحالي، يبلغ هذا الحد نصف إجمالي ذاكرة النظام، مع حد أقصى يبلغ 8192 ميغابايت. للحصول على معلومات حول ضبط حجم الذاكرة المؤقتة، راجِع تغيير حجم الذاكرة المؤقتة.

2 بالنسبة إلى "معالجات الرسائل"، تنصح Apigee بضبط حجم الذاكرة المؤقتة ليتراوح بين 3 غيغابايت و6 غيغابايت. لا تزد حجم الذاكرة المؤقتة عن 6 غيغابايت إلا بعد إجراء اختبارات الأداء.

إذا كان استخدام الذاكرة المؤقتة يقترب من الحد الأقصى أثناء اختبار الأداء، عليك زيادة الحد الأقصى. للحصول على معلومات حول ضبط حجم الذاكرة المؤقتة، راجِع مقالة تغيير حجم ذاكرة الكومة.

3 لا يتم تنفيذ جميع مكوّنات "السحابة الإلكترونية الخاصة" في Java. وبما أنّها غير مستندة إلى Java، فإنّ التطبيقات التي تعمل بشكل أصلي على النظام الأساسي المضيف لا تتضمّن أحجامًا قابلة للضبط لمساحة الذاكرة المخصّصة لـ Java، بل تعتمد على نظام التشغيل المضيف لإدارة الذاكرة.

لتحديد إجمالي مقدار الذاكرة التي تنصح Apigee بتخصيصها لمكوّناتك المستندة إلى Java على عقدة، أضِف القيم المدرَجة أعلاه لكل مكوّن على تلك العقدة. على سبيل المثال، إذا كان العقد يستضيف خادمي Postgres وQpid، تنصح Apigee بأن يتراوح حجم الذاكرة المخصّصة بين 2.5 غيغابايت و4.5 غيغابايت.

للاطّلاع على قائمة بالأجهزة المطلوبة (مثل ذاكرة الوصول العشوائي)، يُرجى الرجوع إلى متطلبات التثبيت.

تغيير أحجام ذاكرة الكومة

لتغيير إعدادات ذاكرة الكومة، عدِّل ملف الخصائص الخاص بالمكوّن. على سبيل المثال، بالنسبة إلى "معالج الرسائل"، عدِّل الملف /opt/apigee/customer/application/message-processor.properties.

إذا لم يكن الملف message-processor.properties متوفّرًا، أو إذا لم يكن الملف .properties المقابل لأي مكوّن من مكوّنات Edge متوفّرًا، أنشئ الملف ثم غيِّر ملكيته إلى المستخدم "apigee"، كما يوضّح المثال التالي:

chown apigee:apigee /opt/apigee/customer/application/message-processor.properties

إذا تم تثبيت المكوّن على أجهزة متعدّدة، مثل Message Processor، عليك تعديل ملف الخصائص على جميع الأجهزة التي تستضيف المكوّن.

يسرد الجدول التالي السمات التي تعدّلها لتغيير أحجام الذاكرة المؤقتة:

الموقع الوصف
bin_setenv_min_mem

الحد الأدنى لحجم الذاكرة المؤقتة. تستند القيمة التلقائية إلى القيم المدرَجة في أحجام ذاكرة الكومة التلقائية والمقترَحة.

يتطابق هذا الإعداد مع خيار Java -Xms.

bin_setenv_max_mem

الحد الأقصى لحجم الذاكرة المؤقتة تستند القيمة التلقائية إلى القيم المدرَجة في أحجام ذاكرة الكومة التلقائية والمقترَحة.

يتطابق هذا الإعداد مع خيار Java -Xmx.

bin_setenv_meta_space_size

حجم البيانات الوصفية التلقائي للفئة يتم ضبط القيمة التلقائية على قيمة bin_setenv_max_permsize، والتي تكون تلقائيًا 128 ميغابايت. في "معالج الرسائل"، تنصح Apigee بضبط هذه القيمة على 256 ميغابايت أو 512 ميغابايت، حسب عدد الزيارات.

يتطابق هذا الإعداد مع خيار Java -XX:MetaspaceSize.

عند ضبط سمات حجم الذاكرة المؤقتة على عقدة، استخدِم اللاحقة "m" للإشارة إلى ميغابايت، كما يوضّح المثال التالي:

bin_setenv_min_mem=4500m
bin_setenv_max_mem=4500m
bin_setenv_meta_space_size=1024m

بعد ضبط القيم في ملف الخصائص، أعِد تشغيل المكوّن:

/opt/apigee/apigee-service/bin/apigee-service component restart

على سبيل المثال:

/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

تغيير خصائص JVM الأخرى

بالنسبة إلى إعدادات Java التي لا تتحكّم فيها الخصائص المذكورة أعلاه، يمكنك أيضًا ضبط ما يلي في ملف الخصائص المقابل لأي مكوّن من مكوّنات Edge:

  • bin_setenv_ext_jvm_opts: اضبط أي سمة Java لم يتم تحديدها بواسطة سمات أخرى. على سبيل المثال:
    bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500

    ومع ذلك، لا تستخدِم bin_setenv_ext_jvm_opts لضبط -Xms أو -Xmx أو -XX:MetaspaceSize، لأنّ القيم المذكورة أعلاه تتحكّم في هذه القيم.

للحصول على نصائح إضافية حول ضبط الذاكرة لمكوّنات Private Cloud، يُرجى الاطّلاع على هذه المقالة في منتديات Edge.