בהתאם לדרישות התנועה והעיבוד שלך, יכול להיות שיהיה צורך לשנות את זיכרון הזיכרון גודל או גודל מטא-נתונים של מחלקה של הצמתים שבהם פועל ענן פרטי מבוסס Java רכיבים.
בקטע הזה מוצגים גודלי זיכרון הערימה של Java מומלצים כברירת מחדל, וגם כתהליך לשינוי ברירות המחדל. לבסוף, בקטע הזה נסביר איך לשנות הגדרות JVM באמצעות קובצי מאפיינים.
גודל ברירת מחדל של זיכרון ערימה מומלץ וגודל ברירת המחדל
בטבלה הבאה מפורטים גדלי הזיכרון של ערימה (heap) שמוגדרים כברירת מחדל ומומלצים ל-Java. רכיבי ענן פרטי:
רכיב | שם הקובץ של המאפיינים | ברירת מחדל גודל הערימה |
מומלץ גודל הערימה |
---|---|---|---|
זמן ריצה | |||
קסנדרה | לא רלוונטי | הגדרה אוטומטית1 | הגדרה אוטומטית1 |
מעבד בקשות | message‑processor.properties |
512MB | 3GB – 6GB 2 |
נתב | router.properties |
512MB | 512MB |
Analytics | |||
שרת Postgres | postgres‑server.properties |
512MB | 512MB |
שרת Qpid | qpid‑server.properties |
512MB | 2GB - 4GB |
ניהול | |||
שרת ניהול | management‑server.properties |
512MB | 512MB |
ממשק משתמש | ui.properties |
512MB | 512MB |
OpenLDAP | לא רלוונטי | אפליקציה מקורית3 | אפליקציה מקורית3 |
שומר גן חיות | zookeeper.properties |
2,048MB | 2,048MB |
הערות | |||
1 מערכת Cassandra מחשבת באופן דינמי את גודל הערימה המקסימלי כאשר מתחילה. נכון לעכשיו, זהו חצי מזיכרון המערכת הכולל, עם מקסימום 8,192MB. איך משנים את גודל הערימה? גודל הזיכרון. |
|||
2 במעבדי הודעות, Apigee ממליצה להגדיר את תמונת הערימה
בגודל של בין 3GB ל-6GB. מגדילים את גודל הערימה ליותר מ-6GB רק אחרי שמזינים
בדיקות ביצועים.
אם השימוש בערימה מתקרב למגבלה המקסימלית במהלך בדיקת הביצועים, מגדילים את המגבלה המקסימלית. למידע נוסף על הגדרת גודל הערימה: שינוי הגודל של זיכרון הזיכרון |
|||
3 לא כל הרכיבים של 'ענן פרטי' מוטמעים ב-Java. כי הם לא מבוססים על Java, לאפליקציות שפועלות באופן מקורי בפלטפורמת המארח אין גודלי ערימה של Java שניתנים להגדרה אישית; במקום זאת, הם מסתמכים על מערכת המארח לזיכרון ניהול. |
כדי לקבוע את הגודל הכולל של הזיכרון ש-Apigee ממליץ לכם להקצות רכיבים בצומת, מוסיפים את הערכים המפורטים למעלה עבור כל רכיב בצומת הזה. לדוגמה, אם הצומת שלך מארח גם את שרתי Postgres וגם את Qpid, Apigee ממליצה שהזיכרון המשולב ההקצאה תהיה בין 2.5GB ל-4.5GB.
לרשימה של רכיבי החומרה הנדרשים (כמו RAM), אפשר לעיין דרישות התקנה.
שינוי הגודל של זיכרון הערימה
כדי לשנות את ההגדרות של זיכרון הזיכרון, עורכים את קובץ המאפיינים של הרכיב. לדוגמה,
במעבד ההודעות, עורכים את
קובץ /opt/apigee/customer/application/message-processor.properties
.
אם הקובץ message-processor.properties
לא קיים, או אם קובץ .properties
התואם של רכיב Edge כלשהו לא קיים.
לא קיים, צריך ליצור אותו ואז לשנות את הבעלות על הקובץ ל-'apigee' למשתמש, באופן הבא
לדוגמה:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
אם הרכיב מותקן במספר מכונות, כמו מעבד ההודעות, עליך חייבים לערוך את קובץ המאפיינים בכל המכונות שמארחים את הרכיב.
בטבלה הבאה מפורטים המאפיינים שאתם עורכים כדי לשנות את גודל הערימה:
נכס | תיאור |
---|---|
bin_setenv_min_mem |
הגודל המינימלי של ערימה. ברירת המחדל מבוססת על הערכים שמופיעים ב: גודל ברירת מחדל של זיכרון ערימה מומלץ. ההגדרה הזו תואמת לאפשרות |
bin_setenv_max_mem |
הגודל המקסימלי של ערימה (heap). ברירת המחדל מבוססת על הערכים שמופיעים ב: גודל ברירת מחדל של זיכרון ערימה מומלץ. ההגדרה הזו תואמת לאפשרות |
bin_setenv_meta_space_size |
גודל ברירת המחדל של המטא-נתונים של הכיתה. ערך ברירת המחדל מוגדר לערך של
ההגדרה הזו תואמת לאפשרות |
כשמגדירים מאפיינים של גודל ערימה בצומת, צריך להשתמש ב-'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
, כי הערכים האלה הם נקבע על ידי המאפיינים שמפורטים למעלה.
לטיפים נוספים על הגדרת זיכרון לרכיבי ענן פרטי, אפשר לעיין במאמר הזה מאמר בפורומים של Edge.