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

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

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

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

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

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

שינוי זיכרון הערימה בשרתי ה-Qpid

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

כדי לשנות את הגודל של זיכרון הערימה בשרתי ה-Qpid:

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

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

    bin_setenv_min_mem=1024m
    bin_setenv_max_mem=2048m
    
  4. שומרים את השינויים.
  5. צריך לוודא שקובץ המאפיינים הזה הוא בבעלות המשתמש של apigee. לדוגמה:
    chown apigee:apigee /opt/apigee/customer/application/qpid-server.properties
    
  6. מפעילים מחדש את שרת Qpid באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    
  7. אם יש לכם יותר משרת Qpid אחד, צריך לחזור על השלבים האלה בכל שרתי ה-Qpid.

אימות התצורה של זיכרון ערימה בשרתי Qpid

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

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

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

    זו התוצאה לדוגמה מהפקודה הקודמת, אחרי שינוי הערימה המינימלית והמקסימלית בשרת ה-Qpid:

    Xms1024m
    Xmx2048m
    

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

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

מה השלב הבא?

הגדרת גודל זיכרון הערימה במעבדי הודעות