Feedback

No olvide que también tenemos una biblioteca con fragmentos de código, http://snippets.dev-co.org _\../

Close

what's your question? be descriptive.

By: Asked

java - gc, overhead, limit, exceeded

Tengo una aplicacion java montada en un servidor web compartido y me ha salido el siguiente error:

java.lang.OutOfMemoryError GC overhead limit exceeded

Exactamente que significa y que puedo hacer?

gracias de antemano.

Add comment viewed 769 times Latest activity over 1 year ago

NN comments
nebiros
-

Segun este hilo este error se presenta por que el garbage collector se toma un tiempo excesivo al realizar una operacion, mire la respuesta del hilo para mas informacion.

or Cancel

2 answers

  • 1

jukdulinux [ Editor ]

Como dice Juan, es porque la aplicación consumió toda la memoria que tenia reservada la vm.
Puede ser por dos razones:

  1. Como dice efectivamente juan, tu aplicación esta haciendo un uso indebido de la memoria.
  2. El servidor de aplicaciones en el que estas desplegando esta con la configuración por defecto, la cual es de baja carga y para ello debes hacerle tuning para que soporte una carga mas pesada. Pero debes ser muy cuidadoso con esto debido a que puede ser un bug y solo lo estarías ocultando con el aumento de memoria.

    El tunning básico consiste en (ejem: tomcat):
  • Aumentar Initial Memory pool (Xms)cuyo valor por defecto 128m.
  • Aumentar Maximum Memory pool (Xmx) uyo valor por defecto es 256m.

Eso es lo basico del tuning hay cosas mas interesantes como configuración de la frecuencia de lanzamiento del garbage colector, numero de hilos, configuracion de la vm en modo server, etc.. Esto lo puedes encontrar en el link que te dejo Juan.

or Cancel