2008-09-28 10 views
9

¿Alguien puede recomendar algunas herramientas útiles de análisis de rendimiento para scripts PHP? Cualquier cosa que pueda ayudarme a encontrar bloques de código problemáticos o inusualmente lentos, detalles sobre el tiempo de ejecución, etc. sería realmente útil. Sé que hay herramientas, pero me pregunto qué es lo que la gente recomienda como más útil y mejor diseñado.¿Puede recomendar herramientas de análisis de rendimiento para PHP?

Respuesta

11

Pruebe webgrind. Le brinda el perfil de CacheGrinder en un formato fácil de leer y basado en navegador. Estoy en una Mac y ha hecho que crear perfiles sea muy sencillo.

+0

¡Esto se ve realmente genial! Definitivamente estaré investigando este. – Wilco

4

XDebug's profiler es bueno. Pero luego soy un usuario de KDE ... Creo que podrías instalar el KCacheGrind en otros administradores de ventanas.

+0

Wingrind sigue siendo funcional para desarrolladores basados ​​en Windows – Willem

+0

MacCallGrind no está nada mal para la gente de Mac (fuera de las máquinas virtuales para ejecutar KCacheGrind, que es la mejor herramienta para analizar estos volcados de callgrind). –

1

El perfilador de Xdebug es bastante bueno, pero CacheGrinder puede ser un poco difícil de interpretar.

Zend Platform (es caro si no está ejecutando la licencia de desarrollador) lo alertará sobre el código de emisión y el mal uso de los recursos.

0

Ver SD PHP Profiler. Mide la frecuencia de ejecución en toda su aplicación y proporciona una pantalla gráfica de punto de acceso de código altamente ejecutado. No hay cambios necesarios para el servidor PHP para instalar esto.

1

Yo soy un admirador de XHProf, uno de Facebook's open source initiatives. Esto, junto con los volcados XDebug, es crucial para determinar los cuellos de botella de rendimiento. Además, la interfaz de usuario (y en particular, la funcionalidad ponderada de callgraph basada en imágenes) oscila.

He utilizado esto en la red de Gawker Media en el pasado (de nuevo, junto con vertederos de estilo XDebug), para ayudar a enfocar nuestros esfuerzos de desarrollo orientados al rendimiento.

Cuestiones relacionadas