Sto usando Java 5 e la nostra applicazione server personalizzata ha bisogno di tuning in GC, poiché alcune volte abbiamo una pausa di 15-20 secondi nelle ore di punta. Stiamo eseguendo Java 5 su una macchina server class con argomenti JVM come -server -d64
C'è un modo per sapere quale algoritmo GC sta correntemente usando la JVM
C'è un modo per dire quale algoritmo GC sta attualmente utilizzando la JVM?
http://docs.oracle.com/javase/1.5.0/docs/guide/vm/gc-ergonomics.html
Su macchine di classe server che eseguono il server VM, il garbage collector (GC) è cambiato dal collettore di serie precedente (-XX:+UseSerialGC
) ad un collettore parallelo (-XX:+UseParallelGC
). È possibile sovrascrivere questo valore predefinito utilizzando l'opzione da riga di comando -XX:+UseSerialGC
per il comando java.
1) Voglio sapere che sta succedendo davvero?
mia prossima domanda è ho aggiunto il seguente comando AT argomenti della riga
-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime -Xloggc:logs/gc.log
2) si hanno tutte le prestazioni o l'effetto del comportamento sulla JVM in esecuzione ad eccezione di registrazione log GC?