Comparativa rendimiento contenido estático – Apache2 vs Nginx

Esta comparativa simplemente trata de ver las peticiones que son capaces de responder por segundo apache2 en los modos ( prefork, event y worker) y nginx con contenido estático. En esta entrada se entiende que sabes realizar la instalación de apache nginx.

En esta prueba se prueba a hacer peticiones a un simple fichero html estático, una imagen de unos 9MB y un fichero comprimido de 500MB. Donde se saca la media de las peticiones que responden según su concurrencia en un tiempo fijo de 10 segundos.

Esto se hace gracias a un simple script que ha realizado uno de mis profesores 🙂 , podéis obtener el código aquí.

Obviamente influyen más factores a la hora de poder realizar bien este calculo, pero para tener una estimación base, se va a realizar con una máquina de unos 512MB de RAM y con la configuración por defecto de los servidores web.

Simplemente tendríamos que cambiar los siguientes parámetros al script anterior:

Para ver el modo en que se encuentra apache2, ejecutamos:

Salida:

Para cambiar de modo, simplemente desactivaremos el módulo y activaremos el otro:

Ejecución Script con Apache2 Prefork

Ejecución Script con Apache2 Event

Ejecución Script con Apache2 Worker

Ejecución Script con Nginx

Crear un gráfico con los resultados

Ahora con otro pequeño programita escrito en python, vamos hacer uso de la librería pygal para generar un gráfico lineal con los datos recogidos anteriormente.

Para más información referente a la librería: enlace

Parece ser que tenemos un vencedor, y en este caso es Nginx , recordar que este es un caso un tanto particular en el que estamos analizando contenido estático, en la próxima entrada compararemos el rendimiento con contenido dinámico.

Vamos a comparar el rendimiento del servidor web, utilizando el módulo de php, php-fpm, memcached y varnish.

Autor entrada: CharlieJ

Deja un comentario

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