Apache vs NGiNX
Apache vs Nginx – ¿Cuál es la mejor opción?
Yo sinceramente pienso que ambos servidores son increíblemente eficientes para cualquier tarea, especialmente desde la versión 2.4 de Apache. En todos mis proyectos cuento con ambos, Nginx para contenido estático y Apache para contenido dinámico (PHP, Python, Perl). Esta configuración, según mi experiencia, es la mejor y más estable configuración para proyectos de pequeña a mediana embergadura.
Rendimiento
Vamos a compara el rendimiento de Apache con el de NGINX tanto en contenido estático como en contenido dinámico. Para realizar este test vamos a utilizar la herramienta de benchmarking ab (apache benchmark).
Sitio con contenido estático
APACHE 10770 req/s @ 512 peticiones en paralelo
NGINX 20232 req/s @ 512 peticiones en paralelo
Haciendo la prueba con 512 conexiones simultáneas, podemos decir que NGINX es aproximadamente el doble de rápido y consume un 4% menos de memoria. Obviamente, NGINX sirve contenido estático mucho más rápido que Apache. Si necesitas mucho contenido estático a altos niveles de competencia, NGINX es más eficiente y debería ser tu elección sin duda.
Sitio con contenido dinámico (PHP)
APACHE 108 req/s @ 16 peticiones en paralelo
NGINX 108 req/s @ 16 peticiones en paralelo
Vaya, son exactamente iguales, y la razón por la que los resultados son los mismos es que tanto Apache como Nginx están prácticamente en idle durante las peticiones dinámicas. Todo lo que hacen es pasar la petición a php-fpm, esperar una respuesta y luego enviarla de vuelta al usuario. Y mientras esperan, pueden seguir sirviendo archivos estáticos sin necesidad de lanzar procesos adicionales para ello. En términos de memoria, ambos servidores han usado la misma cantidad de memoria también.
Así que, cuando se trata de sitios web dinámicos, Apache es ahora una alternativa tan buena como Nginx o cualquier otro servidor web basado en eventos. Y la razón es exactamente esa: Apache puede ahora usar también el enfoque basado en eventos, siempre que lo configures para ello.
Deja una respuesta