ה-Java Virtual Machine (JVM) מריץ את תוכניות ה-Java שלך. לפעמים תצורת ברירת המחדל שאיתה מגיע ה-JVM עשויה להיות לא יעילה ככל האפשר עבור התוכנית שלך.

במקרה כזה, עליך לכוון את ה-JVM שלך כדי לשפר את הביצועים שלו. אתה יכול להתאים את פרמטרי ברירת המחדל עד שתשיג את הביצועים הרצויים עבור היישום שלך.

ישנם שלושה סוגים של אפשרויות שורת פקודה שבהן אתה יכול להשתמש בעת כוונון ה-JVM שלך.

אפשרויות סטנדרטיות

אפשרויות סטנדרטיות מגיעות עם כל מהדר JVM. אתה יכול להשתמש בהם כדי לבצע פעולות כגון הגדרת נתיב הכיתה או בדיקת גרסת ה-JRE שלך. אפשרויות אלו מתחילות בקידומת המקף (-) ומסתיימות בשם האפשרות.

לדוגמה, כדי לבדוק את גרסת ה-JRE שלך, הזן את זה הוראת שורת הפקודה:

java -גרסה 

אפשרויות לא סטנדרטיות

אפשרויות לא סטנדרטיות הן ספציפיות למימוש ה-JVM שלך. המימוש הנפוץ ביותר הוא Hotspot JVM, שכנראה התקנת במחשב שלך.

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

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

instagram viewer

לדוגמה, כדי להגדיר את המינימום ערימת זיכרון של היישום שלך עד 1GB והמקסימום עד 3GB, השתמש בפקודה למטה:

java -Xms1g -Xmx3g JavaClass

אפשרויות מתקדמות

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

כמו כן, כדאי לשים לב שאפשרויות אלו יכולות להשתנות בכל עת ללא הודעה מוקדמת. אתה יכול לעקוב אחר שינויים שבוצעו ב- HotSpot JVM באמצעות התיעוד של אורקל.

אפשרויות מתקדמות מתחילות ב -XX. בדיוק כמו האפשרויות הלא סטנדרטיות, לא מובטח שהן יהיו זמינות בכל מימוש של JVM. התחביר עבור אפשרויות אלו דומה לזה של האפשרויות הלא סטנדרטיות.

לדוגמה, כדי להגדיר גודל מטא-מרחב מרבי של 85004KB, השתמש בהוראה זו:

java -XX: MaxMetaspaceSize=85004k JavaClass

אפשרויות רבות לצבוט את ה-JVM

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

אתה יכול לבדוק את האפשרויות הזמינות על ידי הפעלה java -X או שאתה יכול לעיין בתיעוד של Oracle לפרטים נוספים.