mac extension php xdebug xdebug-profiler

php - extension - ¿Cómo leo la interfaz de usuario de qcachegrind?



xdebug phpstorm (1)

Estoy usando qcachegrind para ver un registro de perfil creado por Xdebug . Puedo ver el archivo bien, pero no tengo ni idea de lo que estoy viendo.

He intentado con Google pero sigo recibiendo tutoriales de instalación, nada sobre cómo entender la pantalla.

  1. ¿Qué me dice la pantalla qcachegrind a continuación sobre mi aplicación?
  2. ¿Hay algo más que pueda ver en este archivo o son todos los datos disponibles?

(Por favor, abra la imagen en una nueva pestaña para una mejor vista)


Herramientas como qcachegrind y kcachegrind visualizan la salida del perfilador PHP Xdebug. La salida del generador de perfiles es prácticamente un registro de todas las llamadas de función de PHP con el tiempo de inicio, el tiempo de ejecución y la jerarquía correspondientes.

Una vista típica se muestra en la siguiente figura:

En el lado izquierdo está el ''Perfil Plano''. Enumera todas las llamadas de funciones individuales desde las que consumen más tiempo hasta las que consumen menos tiempo. El ''Incl.'' La columna muestra el tiempo consumido por la función, incluidas las personas calificadas. La columna ''Auto'' muestra el tiempo empleado por la función, excluyendo a los beneficiarios. Las columnas "Llamadas" y "Función" muestran respectivamente el número de veces que se llama una función y el nombre (más el espacio de nombres) de la función.

En el lado derecho, varias vistas están disponibles para visualizar las personas que llaman y las personas que llaman. Las personas que llaman y las personas que llaman corresponden a la función seleccionada en el lado izquierdo.

En mi captura de pantalla en la parte superior, se abre el ''Mapa de Callee''. Cada rectángulo es una llamada de función dentro de la función seleccionada (un llamado) y cada rectale dentro es un llamado del llamado. El tamaño corresponde al relativo ''Incl''. hora.

En la parte inferior, la vista ''Todas las calles'' muestra los pedidos de la función seleccionada según la propiedad que prefiera.

Una vista más detallada se muestra a continuación:

Esta es una función de una función de base de datos Laravel clasificada en tiempo ''Auto''. Usted ve claramente cómo se relacionan las diferentes llamadas de función y qué función ocupa más tiempo: PDOStatement :: execute. Esto no es una sorpresa, ya que es una función que se conecta a una base de datos externa, la consulta y espera el resultado.

Volver a su captura de pantalla original. Le dice que su aplicación pasó mucho tiempo en la función session_start de PHP. Esto se muestra en el 99.8% del tiempo propio.