Download Configuración para Java

Document related concepts
no text concepts found
Transcript
Configuración para Java
Esta es la configuración utilizada en uno de nuestros clientes.
-server -XX:NewSize=3172m -XX:MaxNewSize=3172m -Xms9206m -Xmx9206m
-XX:PermSize=1024m -XX:MaxPermSize=1024m -XX:SurvivorRatio=90
-XX:TargetSurvivorRatio=0 -XX:+UseParNewGC -XX:ParallelGCThreads=2
-XX:+UseConcMarkSweepGC -XX:+UseFastAccessorMethods -XX:
+CMSParallelRemarkEnabled -Djava.encoding=UTF-8
-Dfile.encoding=UTF-8 -Duser.timezone=America/Santo_Domingo
En este caso se ha utilizado un total de 10gb de memoria para java. ¿Qué significa cada
parametro?:
Opción
-server
-XX:MaxNewSize
-XX:NewSize
-Xmx, Xms
-XX:MaxPermSize
-XX:PermSize
-XX:SurvivorRatio
-XX:TargetSurvivorRatio
-XX:+UseParNewGC
-XX:ParallelCGThreads
-XX:+UseConcMarkSweepGC
-XX:+UseFastAccessorMethods
-XX:+CMSParallelRemarkEnabled
Descripción
Importancia
Indica que utilize la máquina virtual configurada para
ALTA
ser un servidor.
Tamaño maximo e inicial para ser utilizado en nuevos MUY ALTA
objetos. Aproximadamente 1/3 de la memoria total
(Xmx). Esta es el área donde se crean los objetos por
primera vez.
Tamaño máximo e inicial del heap de memoria.
LA MAS
TODOS los demás valores relacionados con memoria
ALTA
dependen de este. En 8 GB de memoria se recomienda
2.2GB, en 12 GB de memoria ram se recomienda 3.5 a
4 GB. Una buena regla puede ser reservar 2-4gb al
servidor, el 50% para java y un 25% para el servidor de
datos.
Tamaño máximo e inicial de la memoria de generación
ALTA
permanente. Un valor de 384m en adelante es válido,
aproximadamente un 10% de la memoria Xmx.
90 para el ratio inicial y
NORMAL
0 para el ratio meta. Define la agresividad del Garbage
Collector (GC)
Utiliza GC paralelo. Para los modernos procesadores
ALTA
multicore es absolutamente IMPORTANTE
Aqui ponga un numero igual al numero de cores de
ALTA
proceso, si el servidor tiene dos quad core , entonces
aqui debe poner un 8. Esto hace que la recolección sea
más rápida y efectiva
Marcado al verificar la memoria en paralelo, no debe
NORMAL
dejar de utilizarse en equipos multicore.
Sólo utilicelo si es con Java 6, no se requiere para Java
7.
Sólo si UseParNewGC, y permite el remarcado en
NORMAL
paralelo, mucho más eficiente