xmx increase change java linux tomcat7 heap-memory

java - increase - tomcat jvm memory settings



Tomcat 7: ¿Cómo establecer el tamaño de pila inicial correctamente? (9)

¡Cuídate con el cambio en las distribuciones de Debian! Traté de cambiar CATALINA_OPTS en mi Debian 7 y los resultados donde ese gato ya no comenzó. Así resolví este problema cambiando la propiedad JAVA_OPTS en lugar de CATALINA_OPTS , como esta

export JAVA_OPTS="-Xms512M -Xmx1024M"

Estaba intentando ajustar el tamaño de almacenamiento dinámico inicial de una instancia de tomcat 7 (CentOS, versión java: 1.6.0_25-b06) agregando la siguiente línea a catalina.sh:

export CATALINA_OPTS="-Xms=512M -Xmx=1024M"

Iniciando tomcat falla y registra el siguiente mensaje a catalina.out:

Invalid initial heap size: -Xms=512m Could not create the Java virtual machine.

¿Qué pasa con estas opciones?


Acabo de enterarme de esto y he implementado la solución de Nathan:

agregue la línea (cambiando los valores según sea necesario):

export JAVA_OPTS="-Xms512M -Xmx1024M"

a /usr/share/tomcat7/bin/setenv.sh

Si ese archivo no existe, créelo y

chown root:root it chmod 755 it

Y luego reinicia Tomcat y compruébalo con

ps aux | grep logging

Que debería tomar la instancia y mostrar los parms de Java


Después de pasar un buen rato en esto. Descubrí que este es el aspecto del setenv.bat. No "se aceptan caracteres en el archivo por lotes.

establecer CATALINA_OPTS = -Xms512m -Xmx1024m -XX: PermSize = 128m -XX: MaxPermSize = 768m

echo hello "% CATALINA_OPTS%"


Funciona incluso sin utilizar la palabra clave ''export''. Esto es lo que tengo en mi setenv.sh (/usr/share/tomcat7/bin/setenv.sh) y funciona.

SO: 14.04.1-Ubuntu Versión del servidor: Apache Tomcat / 7.0.52 (Ubuntu) Servidor construido: 30 de junio de 2016 01:59:37 Número del servidor: 7.0.52.0

JAVA_OPTS="-Dorg.apache.catalina.security.SecurityListener.UMASK=`umask` -server -Xms6G -Xmx6G -Xmn1400m -XX:HeapDumpPath=/Some/logs/ -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:SurvivorRatio=8 -XX:+UseCompressedOops -Dcom.sun.management.jmxremote.port=8181 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false" JAVA_OPTS="$JAVA_OPTS -Dserver.name=$HOSTNAME"


No debes usar = . Simplemente usa esto:

export CATALINA_OPTS="-Xms512M -Xmx1024M"


Puede que no necesite exportar , simplemente agregue esta línea en catalina.sh :

CATALINA_OPTS="-Xms512M -Xmx1024M"


Use el siguiente comando para aumentar el tamaño del almacenamiento dinámico de java para tomcat7 (distribuciones de Linux) correctamente:

echo ''export CATALINA_OPTS="-Xms512M -Xmx1024M"'' > /usr/share/tomcat7/bin/setenv.sh


Vaya al directorio "Tomcat Directory" / bin

si Linux entonces crea setenv.sh else si Windows luego crea setenv.bat

contenido del archivo setenv. *:

export CATALINA_OPTS="$CATALINA_OPTS -Xms512m" export CATALINA_OPTS="$CATALINA_OPTS -Xmx8192m" export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxPermSize=256m"

después de esto reiniciar tomcat con nuevos params.

explicación e información completa está aquí

http://crunchify.com/how-to-change-jvm-heap-setting-xms-xmx-of-tomcat/


setenv.sh es mejor, porque puede transferir fácilmente dicha configuración de una máquina a otra, o de una versión de Tomcat a otra. catalina.sh cambia de una versión de Tomcat a otra. Pero puede mantener su setenv.sh sin cambios con cualquier versión de Tomcat.

Otra ventaja es que es más fácil hacer un seguimiento del historial de sus cambios si lo agrega a su sistema de copia de seguridad o control de versiones. Si observa cómo setenv.sh los cambios a lo largo del historial, verá solo sus propios cambios. Mientras que si usa catalina.sh, siempre verá no solo los cambios, sino también los cambios que vienen con cada versión más nueva de Tomcat.