JVM y Memoria: Tip :: java.lang.OutOfMemoryError

A veces, a los programadores se nos olvida el uso de la memoria por parte de la maquina virtual de JAVA. Siendo esta un proceso mas que corre sobre un sistema operativo necesita la asignacion de recurso de este.

La JVM es el anclaje “fisico” de nuestro maravilloso lenguaje multiplataforma con el Sistema Operativo correspondiente y, como tal, ocupa y utiliza memoria del sistema. Bien, esto es evidente pero, lo que es menos conocido, es como esta implementada esta gestion de memoria.
La JVM se arranca reservando, por defecto, 64MB de memoria para trabajar que va ampliando segun necesidades. Sin embargo, estas sucesivas ampliaciones automaticas llegan a un limite. Podemos gestionar nosotros mismos estos limites tanto por arriba como por abajo, a traves de unos parametros que se le lanza al comando de arranque de la JVM.
Esto es IMPORTANTE si sabemos que nuestra aplicacion va a requerir una gran cantidad de memoria para su funcionamiento y queremos evitar una OutOfMemoryError o si por el contrario, nuestra aplicacion compite con otras de mayor prioridad en un sistema y queremos que utilice solo una parcela de memoria.

Los parametros de gestion de memoria son estos:

-Xms establece la cantidad inicial de memoria
-Xmx establece la cantidad maxima de memoria
-Xss establece el tamaño de pila del hilo JAVA

Es decir, si quisieramos arrancar nuestra aplicacion con una cantidad de memoria asignada de 64MB y queremos que llegue a utilizar un GB, por ejemplo, tendriamos que lanzar un script de la siguiente manera:

java -Xms64m -Xmx1024m

con esto estariamos evitando un posible

java.lang.OutOfMemoryError

Configuracion para TOMCAT

SETEAR–
en
catalina.bat (windows)
set CATALINA_OPTS=-Xms64m -Xmx1024m

catalina.sh (linux)
CATALINA_OPTS=”-Xms64m -Xmx1024m”
export CATALINA_OPTS

Bievenidos

Les doy mas la mas cordial de mi las bienvenidas a este mi nuevo Blog,, aqui pienso poner algunos recursos, para desarrollardores y vivencias de este servidor de ustedes.

saludos y les deseo muchos exitos en sus labores cotidianas.. y que cada linea de codigo que programen les copilen. y que tengo un mundo libre de NullPointerException

Seguir

Get every new post delivered to your Inbox.

Únete a otros 115 seguidores