הגדרה של גודל הזיכרון (heap) במעבדי ההודעות

כרגע מוצג התיעוד של Apigee Edge.
כניסה למסמכי התיעוד של Apigee X.
מידע

מעבד ההודעות של Apigee Edge הוא רכיב מבוסס-Java שגודל ברירת המחדל של זיכרון ערימה הוא 512MB. עם זאת, ייתכן שגודל ברירת המחדל של זיכרון הערימה לא יספיק לכל תרחישי השימוש ב-Apigee Edge. יכול להיות שתצטרכו לכוונן את גודל זיכרון הערימה של מעבדי ההודעות בהתאם לדרישות התנועה והעיבוד שלכם, או כדי לטפל בבעיות שקשורות לזיכרון.

הגודל של זיכרון הערימה (heap) של אפליקציית Java נשלט באמצעות הפרמטרים של שורת הפקודה Java -Xms (גודל ערימה מינימלי) ו--Xmx (גודל ערימה מקסימלי). במעבדי ההודעות של Apigee Edge, השליטה מתבצעת באמצעות המאפיינים bin_setenv_min_mem ו-bin_setenv_max_mem. אפשר לקרוא מידע נוסף על המאפיינים האלה בקטע שינוי הגדרות זיכרון Java.

במסמך הזה מוסבר איך להגדיר את גודל זיכרון הערימה במעבדי הודעות של Apigee Edge.

לפני שמתחילים

שינוי גודל זיכרון הערימה (heap) במעבדי ההודעות

בקטע הזה מוסבר איך לשנות את הגודל של זיכרון הערימה במעבדי ההודעות. ניתן להגדיר את ערכי הזיכרון המינימלי והמקסימלי באמצעות המאפיינים bin_setenv_min_mem ו-bin_setenv_max_mem ברכיב מעבד ההודעות.

כדי לשנות את הגודל של זיכרון הערימה במעבדי ההודעות, מבצעים את השלבים הבאים:

  1. פותחים את הקובץ /opt/apigee/customer/application/message-processor.properties במחשב שבמעבד ההודעות. אם הקובץ עדיין לא קיים, יוצרים אותו. לדוגמה:
    vi /opt/apigee/customer/application/message-processor.properties
    
  2. מוסיפים את השורות הבאות לקובץ הזה:
    bin_setenv_min_mem=minimum_heap_in_megabytes
    bin_setenv_max_mem=maximum_heap_in_megabytes
    

    לדוגמה, אם רוצים לשנות את הערימה (heap) המינימלית והמקסימלית במעבד ההודעות ל-1GB ול-2GB בהתאמה, מוסיפים את השורות הבאות לקובץ הזה:

    bin_setenv_min_mem=1024m
    bin_setenv_max_mem=2048m
    
  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. אם יש לכם יותר ממעבד הודעות אחד, צריך לחזור על השלבים האלה בכל מעבדי ההודעות.

אימות גודל זיכרון הערימה (heap) במעבדי ההודעות

בקטע הזה מוסבר איך לבדוק אם השינויים בזיכרון הערימה שונו במעבדי ההודעות.

למרות שהשתמשת במאפיינים bin_setenv_min_mem ו-bin_setenv_max_mem כדי לשנות את גודל זיכרון הערימה במעבד ההודעות, עליך לוודא שהפרמטרים בפועל של שורת הפקודה Java -Xms ו--Xmx הוגדרו עם הערכים החדשים באופן הבא:

  1. כדי לבדוק אם הפרמטרים של שורת הפקודה -Xms ו--Xmx הוגדרו לערכים החדשים של מעבד ההודעות באמצעות הפקודה הבאה:
    ps -ef | grep message-processor | egrep -o 'Xms[0-9a-z]+|Xmx[0-9a-z]+' | tr '\r' ' '
    
  2. אם זיכרון הערימה (heap) המינימלי והמקסימלי השתנה במעבד ההודעות, הפקודה הקודמת תציג את הערך החדש שצוין עבור -Xms ו--Xmx.

    זו התוצאה לדוגמה מהפקודה הקודמת, אחרי ששיניתם את הערימה (heap) המינימלית והמקסימלית במעבד ההודעות:

    Xms1024m
    Xmx2048m
    

    בפלט לדוגמה, חשוב לשים לב שהערכים החדשים של ערימה מינימלית ומקסימלית הוגדרו.

  3. אם הערכים הישנים של -Xms ושל -Xmx עדיין מופיעים, כדאי לוודא שביצעת את כל השלבים המפורטים בקטע שינוי הגודל של זיכרון הערימה במעבדי ההודעות בצורה נכונה. אם החמצתם שלב כלשהו, יש לחזור על כל השלבים בצורה נכונה.
  4. אם אתם עדיין לא מצליחים לשנות את זיכרון הערימה, תוכלו לפנות לתמיכה של Apigee Edge.

מה השלב הבא?