Intellij Idea-Profiling

Anuncios

El generador de perfiles proporciona información sobre su aplicación, como su CPU, memoria y uso de pilas. También proporciona detalles sobre los subprocesos de la aplicación. En este capítulo se analiza el uso de VisualVMtool para la creación de perfiles de aplicaciones Java. Puede perfilar entidades como CPU y heap.

Se recomienda que los lectores de este tutorial estén familiarizados con los conceptos de perfil de la aplicación.

Introducción

VisualVM es una herramienta visual que integra herramientas JDK y le ofrece potentes capacidades de perfilado. Le permite generar y analizar datos de pilas, rastrear fugas de memoria,monitorear el colector de basura y realizar perfiles de memoria y CPU.

Beneficios

  • Interfaz visual para aplicaciones Java locales y remotas que se ejecutan en JVM.

  • Supervisión del uso de memoria de la aplicación y del comportamiento en tiempo de ejecución de la aplicación.

  • Supervisión de los hilos de aplicación

  • Analizar las asignaciones de memoria a diferentes aplicaciones.

  • Vertederos de hilo – muy práctico en caso de bloqueos y condiciones de carrera.

  • Volcados de pilas: muy útil para analizar la asignación de memoria de pilas.

Configuración

En esta sección, aprenderemos los pasos realizados para configurar VisualVM. Los pasos son los siguientes−

  • Descárgalo desde aquí.

  • Extrae el archivo zip.

  • Vaya a etc / visualvm.archivo conf y agregue la siguiente línea en este archivo−

visualvm_jdkhome=<path of JDK>
  • Si su JDK está instalado en el C:\Program Files\Java \ jdk-9.0.1 directorio entonces debería tener este aspecto−

visualvm_jdkhome="C:\Program Files\Java\jdk-9.0.1"

Supervisión de la aplicación

Veamos ahora cómo supervisar la aplicación. Considere los siguientes pasos para entender lo mismo−

  • Haga doble clic en visualvm.archivo exe.
  • Seleccione la aplicación en el panel izquierdo.
  • Seleccione la pestaña monitor.

 Aplicación de monitoreo

Se le dirigirá a una ventana donde obtendrá los detalles sobre CPU, Montón, Clases y subprocesos. Para ser específico con el uso, pase el ratón sobre cualquier gráfico. Podemos ver el uso de Heap en la captura de pantalla anterior.

Información sobre subprocesos

La aplicación Java puede contener varios subprocesos de ejecución. Para obtener más información sobre los subprocesos,seleccione la pestaña Subprocesos de una aplicación en particular. Dará varias estadísticas sobre los hilos, como el número de hilos en vivo y los hilos de demonio. Los diferentes estados de hilo son Funcionamiento, Sueño, Espera, Estacionamiento y Monitor.

Hilos de Insights

Aplicación de muestreo

VisualVM admite muestreo de CPU, memoria y detección de fugas de memoria. Para la aplicación de muestra, seleccione la aplicación y elija la pestaña de muestra −

Muestreo de CPU

Para muestreo de CPU, haga clic en el botón CPU como se muestra en la siguiente captura de pantalla −

Muestreo de memoria

Perfilado de memoria

Para perfilado de memoria, haga clic en el botón de memoria como se muestra en la siguiente captura de pantalla −

Perfilado de memoria

Fugas de memoria

Se produce una fuga de memoria cuando una aplicación, mientras se ejecuta, llena lentamente el montón con objetos que el programa no elimina automáticamente.

Si un objeto que no es utilizado por el programa no se elimina, entonces permanece en la memoria y el GC no puede recuperar su espacio. Si el número de bytes y el número de instancias en su aplicación aumentaran constante y significativamente en su programa hasta el punto de agotar todo el espacio, esto puede ser una indicación de una fuga de memoria.

Aplicación de perfilado

En esta sección, aprenderemos a perfilar una aplicación. Para perfilar una aplicación, seleccione la aplicación en el panel izquierdo y haga clic en la pestaña perfil −

Perfiles de CPU

Para realizar perfiles de CPU, haga clic en el botón CPU como se muestra en la captura de pantalla siguiente −

Perfiles de CPU

Perfiles de memoria

Para realizar perfiles de CPU, haga clic en el botón CPU como se muestra en la captura de pantalla siguiente −

Perfilado de Memoria de CPU

Anuncios

Deja una respuesta

Tu dirección de correo electrónico no será publicada.