Cuando instalas programas que necesitan el tomcat 6.0 , por ejemplo Openbravo , puedes quedarte sin memoria (help space) en la máquina virtual (JVM) del Tomcat 6.0.
Tomcat 6.0 gestiona todos los host virtuales que se ejecutan en el mismo proceso o procesos diferentes, eso significa poder tener problemas de recursos y sobre todo de memoria.
Cuando iniciamos JVM, asigna una cantidad fija de memoria, si se ejecutan varios JVM, esa cantidad puede ser demasiado elevada (Problemas con el servidor) o demasiado escasa (Problemas de memoria – OutOfMemory – ).
Tomcat 6.0 tiene la posibilidad de configurar mediante parámetros la configuración de la pila dinámica de memoria.
Las opciones que puede establecer son :
- Tamaño inicial de la pila de Java : Parámetros -Xms
- Tamaño máximo de la pila de Java : Parámetro -Xmx
- Tamaño de la pila de proceso de Java ; Parámetro -Xss
- Tamaño Máximo Memoria Permanente : Parámetro : -XX:MaxPermSize
Un Ejemplo :
- Para establecer un tamaño inicial de 384Mb : -Xms384m
- Para establecer un tamaño máximo de 512Mb : -Xmx512m
- Para establecer Memoria Permanente 256Mb : -XX:MaxPermSize=256m
Buscamos el programa catalina.bat que está en la carpeta : tomcat\bin\catalina.bat
colocar estas dos instrucciones sobre la línea 70 :
set CATALINA_OPTS=-Xms384m -Xmx512m -XX:MaxPermSize=256m
set JAVA_OPTS=-Xms384m -Xmx512m -XX:MaxPermSize=256m
Existe otro fichero bat en la misma ruta llamado startup.bat, es aconsejable que también introduzcas dichas instrucciones sobre la línea 28 más o menos.
NOTA : Para el entorno Linux es en la misma ruta pero el fichero se llama catalina.sh y las instrucciones son :
export CATALINA_OPTS=-Xms384m -Xmx512m -XX:MaxPermSize=256m
export JAVA_OPTS=-Xms384m -Xmx512m -XX:MaxPermSize=256m
Saludos de Espinas.