La Java Virtual Machine (JVM) esegue i tuoi programmi Java. A volte la configurazione predefinita fornita dalla JVM potrebbe non essere il più efficiente possibile per il tuo programma.

In tal caso, è necessario ottimizzare la JVM per migliorarne le prestazioni. È possibile regolare i parametri predefiniti finché non si ottengono le prestazioni desiderate per la propria applicazione.

Esistono tre tipi di opzioni della riga di comando che è possibile utilizzare durante l'ottimizzazione della JVM.

Opzioni standard

Le opzioni standard vengono fornite con ogni compilatore JVM. Puoi usarli per eseguire azioni come impostazione del percorso di classe o controllando la tua versione di JRE. Queste opzioni iniziano con il prefisso trattino (-) e terminano con il nome dell'opzione.

Ad esempio, per controllare la tua versione di JRE, inserisci questo istruzione della riga di comando:

java -versione 

Opzioni non standard

Le opzioni non standard sono specifiche per l'implementazione della JVM. L'implementazione più comune è la JVM Hotspot, che probabilmente hai installato sul tuo computer.

Le opzioni non standard iniziano con -X. A differenza delle opzioni standard, c'è molto di più che puoi fare con le opzioni non standard.

Queste opzioni consentono di impostare parametri per aumentare la memoria heap, le dimensioni della scuola materna o il tipo di Garbage Collector. È qui che avviene la maggior parte dell'ottimizzazione delle prestazioni.

Ad esempio, per impostare il minimo memoria heap della tua applicazione a 1 GB e il massimo a 3 GB, utilizzare il comando seguente:

java -Xms1g -Xmx3g JavaClass

Opzioni avanzate

È possibile utilizzare le opzioni avanzate per controllare le azioni a livello di sistema. In generale, non dovresti usare queste opzioni a meno che tu non abbia una conoscenza approfondita del tuo sistema.

Vale anche la pena notare che queste opzioni possono cambiare in qualsiasi momento senza preavviso. È possibile tenere traccia delle modifiche apportate alla JVM HotSpot tramite La documentazione di Oracle.

Le opzioni avanzate iniziano con -XX. Proprio come le opzioni non standard, non è garantito che siano disponibili su ogni implementazione JVM. La sintassi per queste opzioni è simile a quella delle opzioni non standard.

Ad esempio, per impostare una dimensione massima del metaspazio di 85004 KB, utilizzare questa istruzione:

java -XX: MaxMetaspaceSize=85004k JavaClass

Molte opzioni per modificare la JVM

Puoi ottimizzare la tua JVM utilizzando diversi tipi di opzioni. Ma ci sono molte opzioni disponibili per controllare varie impostazioni di basso livello.

Puoi controllare le opzioni disponibili eseguendo java -X oppure puoi controllare la documentazione Oracle per ulteriori dettagli.