ضبط أداة جمع البيانات غير الضرورية لمعالجات الرسائل

في Edge for Private Cloud الإصدار 4.54.00 (الذي يعمل على Java 21)، يستخدم معالج الرسائل جامع المهملات Garbage-First (G1GC) تلقائيًا. يوضّح هذا المستند كيفية ضبط إعدادات جمع البيانات غير المرغوب فيها والتحقّق منها في "معالج الرسائل".

تخصيص أداة تجميع المهملات في معالِجات الرسائل

يوضّح هذا القسم إجراءات ضبط إعدادات بديلة لعملية جمع البيانات غير المرغوب فيها (GC) على "معالج الرسائل على الأجهزة الطرفية". يمكنك إدارة مَعلمات GC من خلال تعديل خصائص GC في "معالج الرسائل". لتعديل أي سمة من سمات الإعداد، استخدِم بنية الرمز المميّز المحدّدة في كيفية ضبط Edge.

لتعديل إعدادات GC في معالِجات الرسائل، اتّبِع الخطوات التالية:

  1. التحقّق من موقع Google Cloud
  2. تعديل GC في معالِجات الرسائل

التحقّق من موقع Google Cloud

توضّح الخطوات التالية كيفية التحقّق من خصائص GC التي تم ضبطها:

  1. ابحث عن خصائص GC في دليل ملفات المصدر الخاص بـ "معالج الرسائل" (Message Processor) /opt/apigee/edge-message-processor/source باستخدام الأمر التالي:
    grep -riE "useG1GC|useZGC|useStringDeduplication" /opt/apigee/edge-message-processor/source
    
  2. تأكَّد من أنّ ناتج هذا الأمر يعرض إعدادات خصائص GC لمعالج الرسائل:
    /opt/apigee/edge-message-processor/source/conf/system.properties:useG1GC={T}conf_system_useG1GC{/T}
    /opt/apigee/edge-message-processor/source/conf/system.properties:useZGC={T}conf_system_useZGC{/T}
    /opt/apigee/edge-message-processor/source/conf/system.properties:useStringDeduplication={T}conf_system_useStringDeduplication{/T}

    السلسلة بين علامتَي {T}{/T} هي اسم السمة التي يمكنك ضبطها في ملف .properties الخاص بـ "معالج الرسائل".

تعديل GC في معالِجات الرسائل

توضّح الخطوات التالية كيفية تعديل إعدادات GC في "معالِجات رسائل Apigee":

  1. افتح ملف /opt/apigee/customer/application/message-processor.properties على جهاز معالج الرسائل في محرِّر. إذا لم يكن الملف متوفّرًا، أنشئه. على سبيل المثال:
    vi /opt/apigee/customer/application/message-processor.properties
    
  2. أضِف أسطر إعدادات GC المطلوبة استنادًا إلى الملف الشخصي المستهدَف:
    • الخيار "أ": استخدام G1GC كجامع بيانات مهملة تلقائي مع بعض التعديلات:
      conf_system_useG1GC=true
      conf_system_useStringDeduplication=true
      conf_system_g1gc.g1ReservePercent=15
    • الخيار "ب": تفعيل Generational ZGC (اختياري لعمليات النشر التي تتطلّب وقت استجابة فائق السرعة):
      conf_system_useG1GC=false
      conf_system_useZGC=true
      bin_setenv_max_meta_space_size=1024m
    • الخيار C: تفعيل إعداد عام في "إدارة العملاء":

      اضبط bin_setenv_ext_jvm_opts في ملف إلغاء .properties للمكوّن (/opt/apigee/customer/application/message-processor.properties) لضبط أي خصائص عامة لـ GC، ثم أعِد تشغيل المكوّن. على سبيل المثال:

      conf_system_useG1GC=false
      conf_system_useZGC=false
      bin_setenv_ext_jvm_opts="-XX:+UseParallelGC"
  3. احفظ التغييرات.
  4. تأكَّد من أنّ ملف الخصائص هذا مملوك للمستخدم apigee. على سبيل المثال:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. أعِد تشغيل "معالج الرسائل" باستخدام الأمر التالي:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. إذا كان لديك أكثر من معالج رسائل واحد، كرِّر هذه الخطوات على جميع معالجات الرسائل.

تعديل عملية إزالة التكرار من السلسلة

تضبط إعدادات G1GC تلقائيًا قيمة UseStringDeduplication على true، ما يحسّن عملية تخصيص ذاكرة كومة Java من خلال السماح لقيم String المتطابقة بمشاركة صفيف أحرف واحد. لإيقاف ميزة إزالة تكرار السلاسل، اضبط conf_system_useStringDeduplication=false في /opt/apigee/customer/application/message-processor.properties وأعِد تشغيل معالج الرسائل، كما هو موضّح في تعديل GC في معالجات الرسائل.

التحقّق من إعدادات جمع البيانات المهملة على "معالجات الرسائل"

للتحقّق من تطبيق تغييرات إعدادات GC على معالج الرسائل:

  1. ابحث عن سمة GC في دليل /opt/apigee/edge-message-processor/conf وتأكَّد من ضبطها بالقيمة الجديدة. على سبيل المثال:
    grep -riE "useG1GC|useZGC|g1gc\.|useStringDeduplication" /opt/apigee/edge-message-processor/conf
    
  2. تأكَّد من أنّ /opt/apigee/edge-message-processor/conf/system.properties يعكس القيم التي تم ضبطها حديثًا. على سبيل المثال، يتم عرض إعدادات Apigee Default GC على النحو التالي:
    /opt/apigee/edge-message-processor/conf/system.properties:useG1GC=true
    /opt/apigee/edge-message-processor/conf/system.properties:useZGC=false
    /opt/apigee/edge-message-processor/conf/system.properties:g1gc.maxGCPauseMillis=200
    /opt/apigee/edge-message-processor/conf/system.properties:g1gc.initiatingHeapOccupancyPercent=45
    /opt/apigee/edge-message-processor/conf/system.properties:g1gc.g1ReservePercent=15
    /opt/apigee/edge-message-processor/conf/system.properties:useStringDeduplication=true
  3. تأكَّد من أنّ عملية JVM التي يتم تشغيلها في "معالج الرسائل" قد بدأت باستخدام علامات -XX: المتوقّعة:
    ps -ef | grep edge-message-processor | grep -E "UseG1GC|UseZGC"
    
    • بالنسبة إلى Apigee Default G1GC، تأكَّد من أنّ سطر الأوامر يتضمّن ما يلي: -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:InitiatingHeapOccupancyPercent=45 -XX:G1ReservePercent=15 -XX:+UseStringDeduplication -XX:MaxMetaspaceSize=1024m
    • بالنسبة إلى Generational ZGC، تأكَّد من أنّ سطر الأوامر يتضمّن ما يلي: -XX:+UseZGC -XX:+ZGenerational -XX:MaxMetaspaceSize=1024m
  4. إذا استمر تعذُّر ضبط إعدادات GC، يُرجى التواصل مع فريق دعم Apigee Edge.

ما هي الخطوات التالية؟