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

¿Porque Java consume mucha RAM ?

Estas en el tema de ¿Porque Java consume mucha RAM ? en el foro de Java en Foros del Web. Hola, que tal, tengo una duda respecto a Java, tengo una aplicación de escritorio el cual solamente es un cronometro hecho en un hilo y ...
  #1 (permalink)  
Antiguo 18/09/2014, 11:39
 
Fecha de Ingreso: febrero-2011
Mensajes: 138
Antigüedad: 13 años, 2 meses
Puntos: 6
Pregunta ¿Porque Java consume mucha RAM ?

Hola, que tal, tengo una duda respecto a Java, tengo una aplicación de escritorio el cual solamente es un cronometro hecho en un hilo y conexiones a MySQL pero solo esa aplicación me consume casi 100 MB de RAM.

Hace tiempo vi una tabla comparativa en uso de recursos de RAM de lenguajes de programación pero no la encuentro, alguien podría decirme que lenguajes de programación usan menos recursos? ya ven que para una aplicación hay que usar los mínimos requisitos posibles.

La noción que tengo es, por que Java utiliza una Maquina Virtual y la cual corre en cualquier S.O. y cualquier arquitectura x32 o x64 creo que esa sería una de las mejores ventajas y lo malo es que hay que usar programas externos para crear el .exe a demás es difícil hacer un instalador con la BD incluida.

Alguien podría mencionarme algunas desventajas aparte del consumo de RAM y lo antes mencionado. Y también que ventajas tengo con otros lenguajes.

Espero sus respuestas, saludos
__________________
-A veces las cosas pequeñas nos hacen grandes problemas, las cuales no son cosas imposibles de resolver-
  #2 (permalink)  
Antiguo 18/09/2014, 13:08
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: ¿Porque Java consume mucha RAM ?

Buenas,

El proceso de java incluye no solo a tu programa, sino a toda la JVM sobre la que se está ejecutando tu código además de analizar, optimizar, precompilar y gestionar recolección de basura.
Por otro lado, la JVM crea los distintos espacios de memoria necesarios para la ejecución, entre los que destaca el Heap, que es donde se almacenan los objetos. Si juegas con los parámetros de arranque java, especialmente -Xms y -Xmx, seguramente podrás optimizar algo la memoria utilizada. Échale un vistazo a los comandos:
http://docs.oracle.com/javase/8/docs...dows/java.html

Otros lenguajes como por ejemplo Python consumen algo menos de memoria, aunque son muuucho más lentos que java:
http://benchmarksgame.alioth.debian....hon3&data=u32q

Si quieres consumir realmente poco y tener el máximo rendimiento, tendrás que producir código que sea ejecutable directamente por el procesador y prescindir de comodidades como la gestión automática de memoria, la introspección, etc. Programar en C o en C++ sería lo mejor en este caso.

Respecto a lo de crear el .exe, yo nunca le he visto ningún tipo de utilidad. Desde hace muchísimo tiempo, en Windows, si tienes instalado Java, basta con hacer doble clic sobre el jar para que se ejecute, igual que si fuera un exe. Por otro lado, crear un instalador en Java con su sqlite o similar embebida es igual de complicado o trivial que hacerlo para una aplicación nativa. ¿Cual es la diferencia?
http://nsis.sourceforge.net/Java_Lau...E_installation

Un saludo
  #3 (permalink)  
Antiguo 18/09/2014, 13:41
 
Fecha de Ingreso: febrero-2011
Mensajes: 138
Antigüedad: 13 años, 2 meses
Puntos: 6
Respuesta: ¿Porque Java consume mucha RAM ?

Gracias por tu comentario, con respecto al jar, a veces da problemas para ejecutar en algunas máquinas, por ejemplo cuando el usuario instala Winrar y tiene activada la casilla de abrir los .jar con el programa y ahí empiezan los problemas, ya estuve investigando sobre las BD embebidas, es algo interesante. Muchas gracias por la info, saludos
__________________
-A veces las cosas pequeñas nos hacen grandes problemas, las cuales no son cosas imposibles de resolver-
  #4 (permalink)  
Antiguo 18/09/2014, 22:12
Avatar de rhq
rhq
 
Fecha de Ingreso: junio-2012
Ubicación: Córdoba
Mensajes: 12
Antigüedad: 11 años, 10 meses
Puntos: 3
Respuesta: ¿Porque Java consume mucha RAM ?

Cita:
Iniciado por Jeshua_11_7 Ver Mensaje
Gracias por tu comentario, con respecto al jar, a veces da problemas para ejecutar en algunas máquinas, por ejemplo cuando el usuario instala Winrar y tiene activada la casilla de abrir los .jar con el programa y ahí empiezan los problemas, ya estuve investigando sobre las BD embebidas, es algo interesante. Muchas gracias por la info, saludos
Puedes crear un .bat que ejecute el jar y se soluciona (como si fuera un launcher)

Etiquetas: c++, csharp, python, ram, ruby, visualbasic
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 13:14.