2010-12-17 16 views
12

Aquí está una declaración de mi catalina.out, generada por mi servidor Tomcat:Explicación de declaraciones de registro Tomcat GC

1885,855: [GC [PSYoungGen: 742996K-> 64359K (761472K)] 2509583K-> 1832973K (4116928K), 0.1453610 segundos] [Tiempos: usuario = 0.31 sys = 0.00, real = 0.14 segundos]

¿Podría alguien explicar el significado de varios números aquí?

Respuesta

22

La ruptura de la línea es tan followd:

1885.85 - esto en cuestión de segundos es la cantidad de tiempo que la JVM ha estado funcionando, por lo que alrededor de 31 minutos más o menos en su caso momento en el que el GC se llevó lugar.

[GC - indica que se produjo un GC en este momento. Este es un GC parcial, a veces se mostrará Full GC

Ahora, el montón total disponible para la JVM = Joven + Antiguo

[PSYoungGen:742996K->64359K(761472K) - representa el colector Barrido paralelo en la generación joven (que es uno de los muchos tipos de colectores GC disponibles en la JVM).

La memoria liberada por GC es siempre del patrón

x->y(z) 

x es la memoria inicial antes de GC, Y es la memoria después de GC, z es el total memoria permitida para esa área en la JVM

por lo que en tu ejemplo, 742996K->64359K(761472K) - el tamaño total es de 761Mb joven, y cuando alcanzó 742 Mb una colección tuvo lugar, una nd se aclaró hasta 64.3Mb es decir, se aclaró 678 Mb

2509583K->1832973K(4116928K) 

Aquí la memoria total del montón está representado. Así que de un total de 4,1 Gb, cuando se llevó a cabo el GC, había llenado 2,5 Gb y había bajado a 1,83 Gb, nuevamente los mismos 678 Mb es lo que se eliminó.

0.1453610 secs] 

Toda esta operación se llevó a 0.1453610 segundos

[Times: user=0.31 sys=0.00, real=0.14 secs] 

muestra la ruptura de user, system and real times tomada.

Esta es sólo una línea - que estaría buscando un patrón especialmente uno que dice Full GC en ella y utilizar un analizador de registro como GCViewer para mostrarle el rendimiento y otras cosas buenas.

Lea también el docs from Sun para obtener los conceptos básicos.

Más información:

http://sujitpal.blogspot.com/2006/08/charting-jvm-garbage-collection.html

Java Garbage Collection Log messages

+0

http://java.sun.com/docs/hotspot/gc1.4.2/example.html y http: // java. sun.com/docs/hotspot/gc1.4.2/ – dharm0us

+0

esta es una muy buena respuesta. – Jasonw

+0

¿Podrían explicar la desintegración del usuario, del sistema y de los tiempos reales? La interpretación de Unix está bien, pero no entiendo cómo estos tiempos importan en el contexto de GC. –

Cuestiones relacionadas