java - sobre - tabla catalogo base de datos
¿Cuál es el estado actual de las opciones de rendimiento de Oracle Java HotSpot VM(+ UseStringCache,+UseCompressedStrings,+OptimizeStringConcat) (4)
Para verificar el uso de los valores predeterminados
java -XX:+PrintFlagsFinal
Para encontrar exactamente lo que quiere, puede
java -XX:+PrintFlagsFinal | grep UseCompressedStrings
Estaba leyendo las opciones de VM de Java HotSpot . He visto algunos conmutadores de VM interesantes, en su mayoría pertenecientes a Strings, lo cual es de gran valor para mí ya que mi aplicación está realizando una gran manipulación de String. Esos son:
-XX:+UseStringCache
-
-XX:+UseCompressedStrings
-
-XX:+OptimizeStringConcat
Me preguntaba: ¿están estos conmutadores por defecto? ¿Qué es la experiencia del mundo real al usarlos? ¿Hacen la diferencia?
Sé que -XX:+UseCompressedStrings
se eliminó en Java 7 porque era demasiado difícil de admitir.
Para Java 7 actualización 40
$ java -XX:+PrintFlagsFinal 2>&1 | grep UseStringCache
bool UseStringCache = false {product}
$ java -XX:+PrintFlagsFinal 2>&1 | grep OptimizeStringConcat
bool OptimizeStringConcat = true {C2 product}
Basado en mi verificación de JDK6u21 y JDK7u21 usando PrintFlagsFinal, tenemos los siguientes valores:
JDK6u21 JDK7u21
-XX:+UseStringCache false false
-XX:+UseCompressedStrings false <unsupported>
-XX:+OptimizeStringConcat false true
Teniendo en cuenta el rendimiento de String, eche un vistazo a -XX:+PrintStringTableStatistics
y -XX:StringTableSize=
. Java 7 viene con buenas características que permiten el ajuste de caché de cadenas cuando se utilizan las cadenas internas. De esta forma, puedes optimizar el tamaño del caché de cadena.
Y, un rendimiento de cadena relacionado Q / A: Java GC tuning para cadenas