Foros del Web » Programación para mayores de 30 ;) » Java »

Limpiar código Java para consumo de memoria

Estas en el tema de Limpiar código Java para consumo de memoria en el foro de Java en Foros del Web. Hola foreros, estamos trabajando en una aplicación web java (en IBM Rational) sobre un servidor WAS 6.0. Estámos haciendo un seguimiento de consumo de memoria ...
  #1 (permalink)  
Antiguo 14/04/2010, 02:42
 
Fecha de Ingreso: abril-2010
Mensajes: 2
Antigüedad: 14 años
Puntos: 0
Limpiar código Java para consumo de memoria

Hola foreros,

estamos trabajando en una aplicación web java (en IBM Rational) sobre un servidor WAS 6.0. Estámos haciendo un seguimiento de consumo de memoria con el Perfilador que el Rational ofrece (Agent Controller) ya que al navegar por la aplicación durante un rato, el servidor se cae. Perfilador del Rational nos ofrece unos datos que no sabemos leer. Entendemos que son datos de consumo pero:

1- ¿Cuales son los datos o consumos de memoria correctos para saber que la aplicación consume normalmente? En la imagen que os pongo ¿Los rangos de bytes son normales o son excesivos?

2.- Viendo la imagen. Los [char son los que más consumen. ¿Que son? ¿Strings, variables, constantes? ¿Como se puede reducir esto? No sabemos!

Muchas gracias de antemano.

P.D.- Hemos utilizado un plugin de eclipse para limpiar codigo y eliminar código inutilizado y sigue igual.

Imagen:
[URL]http://img52.imageshack.us/img52/4544/aplicacionperfilador.jpg[/URL]
  #2 (permalink)  
Antiguo 14/04/2010, 06:20
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: Limpiar código Java para consumo de memoria

Por un lado, nadie te puede decir si los rangos son normales o no por que depende de la aplicación. Es decir, no existe un "rango normal", existe un "rango normal para esta aplicación cuando tiene esta determinada carga".

De todas formas, los datos que muestran no dan información, ya que muestra el consumo de las clases básicas de Java y siempre la memoria acaba ahí, así que no dice nada. Lo que es importante es ver qué clases complejas son las que están consumiendo memoria o recursos. Por ejemplo, es normal tener muchos megas de la clase [char ya que todos los buffer de char acaban ahí, pero si un objeto de una clase tuya tiene 2 MB en char y no los suelta, entonces eso puede no ser normal.

Para hacer un diagnóstico hace falta conocimiento de la aplicación y todos sus elementos, además de conocer las herramientas de profiling y que es lo que realmente te están diciendo.

No es un tema que se solucione en dos patadas o leyendo una FAQ. Si os corre prisa/ es crítico, mi consejo es que si podeis, contrateis un experto para solucionar esos problemas y/o que os de formación.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.

Etiquetas: limpiar, memoria
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:07.