[Gvsig_desarrolladores] Memoria JAVA monitorizada

Andrés Maneiro amaneiro en icarto.es
Vie Jun 10 12:04:03 CEST 2011


Hola Daniel,

On 09/06/11 19:14, Daniel L.S. wrote:
> Hola. Se que alguna vez se ha hablado del tema, pero no se muy bien las
> soluciones que se aportaron. Tengo una extensión que genera mapas
> imprimibles configurables. Al configurar un mapa con varias "ventanas"
> con imagenes de diefrentes servicios wms me encuentro con un aumento muy
> elevado del uso de memoria de java. Está claro que se puede asignar más
> memoria al proceso gvSIG en el gvSIG.ini pero eso solo retrasa un poco
> el hava heap space error. Pues es cuestion de un par de mapas impresos
> para saturar la memoria. Adjunto una imagen en la que muestra el monitor
> de mi memoria y los hilos. Los dos "escalones" cosiderables en el uso de
> memria son causados al imprimir un mapa con 5 ventanas con informacion
> de 5 servicios WMS. Como veis no se libera nunca esa memoria. Si alguien
> tiene alguna solucion, por favor que me la comente.
>

por un lado se me ocurre que puedes configurar la jvm que lanza gvsig 
con ciertos parámetros que mejoren la recolección de objetos. Aquí 
algunos enlaces que usé yo para tunear un geoserver:

http://www.petefreitag.com/articles/gctuning/
http://blogs.oracle.com/jonthecollector/entry/presenting_the_permanent_generation

Bueno, y seguro que googleando encuentras alguno mejor.

Por otro lado, como dices, esto sólo retrasará el error. Lo que ocurre 
es que hay memory leaks. Para ver dónde están, puedes usar algunas de 
las herramientas de java, por ejemplo, jmap:
http://docs.geoserver.org/stable/en/user/production/troubleshooting.html#jmap

Saludos,
Andrés


Más información sobre la lista de distribución gvSIG_desarrolladores