Cómo generar perfiles del rendimiento de Node.js con el panel Rendimiento

Usa el panel Rendimiento para generar perfiles del rendimiento de las aplicaciones de Node.js y Deno.

¿Qué es un perfil de CPU?

Un perfil de CPU es un informe que muestra cómo se usó la CPU durante un período. Puede mostrar qué programas usaban más tiempo de CPU, qué procesos se estaban ejecutando y cuánto tiempo se pasó en cada estado. Con los perfiles de CPU, puedes identificar cuellos de botella de rendimiento y optimizar el uso de recursos de la CPU.

Cómo abrir DevTools para Node

  1. En la línea de comandos, ejecuta lo siguiente:

    Node.js

    node --inspect file-name.js

    Deno

    deno --inspect file-name.js
  2. Conéctate a DevTools para Node de una de las siguientes maneras:

    • Abre DevTools y haz clic en el botón verde de nodo en la barra de acciones de DevTools que se encuentra en la parte superior.
    • En la barra de direcciones, ingresa chrome://inspect y, luego, haz clic en una de las siguientes opciones:

      • Abre las Herramientas para desarrolladores dedicadas para Node en Dispositivos.
      • Selecciona Inspect en el objetivo que deseas perfilar.

    Todas las formas de abrir DevTools para Node.

Genera un perfil de la CPU

Para crear un perfil de la CPU, abre el panel Rendimiento y haz clic en el botón Record dos veces para iniciar y finalizar la creación de perfiles.

El botón para grabar y el selector de instancias de VM

Cómo analizar los resultados de la generación de perfiles

Después de detener la grabación, el panel Rendimiento organiza y muestra los datos sobre la grabación en un "perfil". Usa las siguientes pestañas para analizar los datos de generación de perfiles:

  • Descripción general de Rutas. Se encuentra en la parte superior, debajo de la barra de actividades. Muestra gráficos de actividad de la CPU y de la red en una línea de tiempo. Úsala para identificar cuellos de botella en el rendimiento.

    Descripción general de Rutas.

  • De abajo hacia arriba: Usa esta pestaña para inspeccionar una parte seleccionada de la grabación y ver el tiempo total dedicado a actividades individuales.

    La pestaña Ascendente.

  • Árbol de llamadas: En esta pestaña, se muestran las actividades raíz de una parte seleccionada de la grabación. Las actividades raíz también tienen sus pilas de llamadas anidadas. Usa esta pestaña para identificar qué actividad genera más trabajo.

    La pestaña Árbol de llamadas.

  • Registro de eventos: En esta pestaña, se enumeran las actividades de una porción seleccionada de la grabación en el orden en que ocurrieron.

    La pestaña Registro de eventos.

Crea un perfil con el comando console.profile()

Las Herramientas para desarrolladores te permiten generar perfiles del rendimiento de la CPU de JavaScript con el comando console.profile(). Puedes agregar este comando a tu código y, luego, ejecutar el archivo, o bien copiar y pegar el código en Console. En el panel Rendimiento, se mostrarán los resultados.

Para usar este comando, sigue estos pasos:

  1. Une tu código con console.profile() y console.profileEnd(), por ejemplo:

    console.profile( profile ${i} );
    // Code to be profiled
    doSomething();
    console.profileEnd();
    
  2. Ejecuta tu código de una de las siguientes maneras:

Una vez que se complete el perfil, el resultado se mostrará automáticamente en el panel Rendimiento.