¿Es lento PHP?

¿Lento o rápido? Depende de con qué se compare…

En el artículo New Year’s Benchmarks podemos encontrar el resultado de una prueba que consistía en comparar el tiempo de ejecución de diferentes frameworks de PHP: Cake, Solar, Symfony y Zend. También realizaron una prueba base en la que compararon “sólo HTML” y PHP. El resultado de esta comparación fue:

framework 1 2 3 4 5 avg
baseline-html 2613.56 2284.98 2245.98 2234.94 2261.01 2328.09
baseline-php 1717.74 1321.49 1292.86 1511.40 1327.35 1434.17

Como podemos ver, PHP supone un procesamiento que hace que el tiempo de respuesta sea significativamente menor.

Cualquiera puede realizar un experimento similar con la herramienta Apache HTTP server benchmarking tool, que suele estar disponible con cualquier instalación de Apache. Con esta herramienta podemos descubrir cuántas peticiones por segundo es capaz de responder cualquier instalación de Apache.

Por ejemplo, podemos realizar un experimento para ver qué es más rápido, escribir “¡Hola mundo!” directamente en HTML o desde PHP.

Es decir, tenemos dos páginas, una sólo contiene HTML:

<!DOCTYPE html>
<html>
<head>
<title>Prueba</title>
</head>
<body>
<p>
¡Hola mundo!
</p>
</body>
</html>

La otra contiene un pequeño fragmento de PHP:

<!DOCTYPE html>
<html>
<head>
<title>Prueba</title>
</head>
<body>
<p>
<?php
 echo "¡Hola mundo!";
?>
</p>
</body>
</html>

Los resultados de HTML estático:

Apache es capaz de devolver 2280 peticiones por segundo cuando se trata de la página con HTML estático.

Los resultados de PHP:

Apache es capaz de devolver 1439 peticiones por segundo cuando se trata de la página con código PHP.

Como podemos ver, otra vez la ejecución de una página con PHP, por poco que sea, supone una gran penalización.

Profesor del Departamento de Lenguajes y Sistemas Informáticos de la Universidad de Alicante (España). Interesado en el desarrollo y la accesibilidad web.

0 comentarios sobre “¿Es lento PHP?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.