Herramienta de monitoreo y resolución de problemas de JVM [1.8]

Herramientas de monitoreo de rendimiento y solución de problemas [1.8]

  • jps
    • Herramienta de estado de proceso de JVM, que muestra todos los procesos de máquina virtual HotSpot en el sistema especificado
    • De manera predeterminada, se muestra el proceso de la máquina virtual en ejecución: la ID única de la máquina virtual local (LVMID) y la clase principal de ejecución
    • jps [-ayuda]
      • ayuda: obtener lista de ayuda
    • jps [-q] [-mlvV] [<hostid>]
      • q: solo genera LVMID, omite la clase principal
      • m: el parámetro pasado a la función main () de la clase principal cuando comienza la salida
      • l: muestra el nombre completo de la clase principal. Si se ejecuta el jar, se genera la ruta completa del jar
      • v: parámetros JVM
      • V: Salida de los parámetros pasados ​​a la JVM a través del archivo indicador (archivo .hotspotrc o el archivo especificado por -XX: Banderas = 
      • <hostid>: <hostname> [: <port>] Ver el proceso del host remoto
  • jstat
    • Herramienta de monitoreo de estadísticas JVM, utilizada para monitorear los datos en ejecución de todos los aspectos de la máquina virtual
    • Puede mostrar los datos de carga de clase, memoria, recolección de basura, compilación JIT, etc. en el proceso de máquinas virtuales locales o remotas
    • jstat -help | -options
      • ayuda: obtener ayuda
      • opciones: obtener la lista de parámetros de funciones
    • jstat - <opción> [-t] [-h <líneas>] <vmid> [<intervalo> [s | ms] [<count>]]
      • t: la primera columna muestra la marca de tiempo, comenzando desde el inicio de jvm
      • h <líneas>: cuántas líneas mostrar el encabezado
      • vmid: si es una máquina virtual local, es el host remoto de lvmid, entonces [protocolo:] [//] vmid [@nombrehost [: puerto] / nombreDeServidor]
      • intervalo: salida una vez cada vez especificado, la unidad predeterminada es ms, se puede especificar como s
      • recuento: cuántas veces salir
      • opción
        • clase: supervise la carga de la clase, la cantidad de descarga, el espacio total y el tiempo de carga de la clase
          • Ejemplos

          • Analizando

        • compilador: método compilado JIT de salida, mucho tiempo y otra información
          • Ejemplos

          • Analizando

        • gc: supervisa el montón de Java
          • Ejemplos

        • gccapacity: el contenido de monitoreo es el mismo que gc, centrándose en el espacio máximo y mínimo utilizado en cada área
          • Ejemplos

          • Analizando

        • gcutil: Básicamente compatible con gc, centrándose en el porcentaje de espacio utilizado en el espacio total
        • gccause: consistente con la función de gcutil, la razón de la salida adicional del último gc
        • gcnew: monitoriza el Gc de la nueva generación
        • gcnewcapacity: básicamente lo mismo que gcnew, centrándose en el uso de la memoria
        • gcold: monitoriza la situación de Gc en la vieja generación
        • gcoldcapacity: básicamente lo mismo que gcold, centrándose en el uso de la memoria
        • gcmetacapacity: supervisa el uso de memoria de metadatos
        • printcompilation: estadísticas del método de compilación JIT
          • Ejemplos

          • Analizando

  • jinfo
    • Información de configuración para Java, vea y ajuste los parámetros de la máquina virtual en tiempo real
  • jmap
    • Mapa de memoria para Java, generar instantánea de volcado de memoria de máquina virtual (archivo headdump)
    • Otras formas de obtener archivos de volcado
      • -XX: HeadDumpOnOutOfMemoryError generado automáticamente después de la excepción OOM
      • -XX: HeapDumpONCtrlBreak Use Ctrl + tecla de interrupción para promover la generación
      • En el entorno de Linux, envíe kill -3 para generar
      •  
    • Excepto que los parámetros -dump y -histo son comunes a la plataforma, otros parámetros solo se usan en Linux y Solaris

  • jhat
    • JVM Heap Dump Browser, utilizado para analizar el archivo headdump, establecerá un servidor http / html, permitirá a los usuarios ver la estructura de análisis en el navegador
    • Generalmente, jhat no se usa directamente. Primero, consume tiempo y recursos, y segundo, la función es relativamente aproximada.

  • jstack
    • Stack Trace para Java, que muestra una instantánea de hilo de la máquina virtual
    • Una instantánea de subproceso es una colección de pilas de métodos que ejecuta cada subproceso en la máquina virtual actual
    • El propósito de generar una instantánea es localizar la causa de una pausa larga en el hilo.
  • HSDIS
    • Complemento de desmontaje de código generado por JIT
    • -XX: + PrintAssembly restaura el código local generado dinámicamente a la salida del código de ensamblaje y genera comentarios
  • JConsole
    • Comando jconsole o jconsole.exe de jdk / bin
    • Monitoreo de memoria (memoria): equivalente al comando visual jstat
    • Supervisión de subprocesos (subproceso): comando visual jstack
  • jvisualvm
    • Muestra el proceso de la máquina virtual y la configuración del proceso, la información del entorno (jps, jinfo)
    • Supervise la información de la CPU, GC, montón, área de método e hilo de la aplicación (jstat, jstack)
    • volcado y volcado de análisis (jmap, jhat)
    • Análisis de rendimiento del programa a nivel de método
    • Instantánea del programa sin conexión
    • Otros complementos
      • BTrace: con la premisa de no detener la ejecución del programa de destino, agregue dinámicamente el código de depuración que no existe a través de la tecnología HotSpot de la máquina virtual HotSpot.
Publicado 24 artículos originales · elogiado 0 · visitas 103

Supongo que te gusta

Origin blog.csdn.net/jiangxiayouyu/article/details/105614193
Recomendado
Clasificación