NGINX, pronunciado como "engine-ex", tuvo su lanzamiento oficial en octubre de 2004. El creador del software, Igor Sysoev, inició su proyecto en 2002 como un intento de responder al problema C10k. C10k es el reto de gestionar diez mil conexiones al mismo tiempo.
Hoy en día, hay incluso más conexiones que los servidores web tienen que manejar. Por esa razón, NGINX ofrece una arquitectura asincrónica y basada en eventos. Esta función convierte a NGINX en uno de los servidores más confiables en cuanto a velocidad y escalabilidad.
Debido a su excelente capacidad para manejar muchas conexiones y velocidad, muchos sitios web de alto tráfico han estado utilizando el servicio de NGINX. Algunos de estos gigantes en línea son Google, Netflix, Adobe, Cloudflare, WordPress.com y muchos más.
¿Cómo funciona NGINX?
Antes de aprender más sobre NGINX, echemos un vistazo a cómo funciona un servidor web. Cuando alguien realiza una solicitud para abrir una página web, el navegador se pone en contacto con el servidor de ese sitio web. Luego, el servidor busca los archivos solicitados para la página y los envía al navegador. Este es solo el tipo de solicitud más simple.
El ejemplo anterior también se considera como un hilo único. Los servidores web tradicionales crean un solo hilo para cada solicitud, pero NGINX no funciona de esa manera. Como se indicó anteriormente, NGINX funciona con una arquitectura asincrónica basada en eventos. Significa que subprocesos similares se administran bajo un proceso de trabajo, y cada proceso de trabajo contiene unidades más pequeñas llamadas conexiones de trabajo. Toda esta unidad es entonces responsable de manejar los hilos de solicitud. Las conexiones de trabajo entregan las solicitudes a un proceso de trabajo, que también las enviará al proceso maestro. Finalmente, el proceso maestro proporciona el resultado de esas solicitudes.
Eso puede sonar simple, pero una conexión de trabajador puede encargarse de hasta 1024 solicitudes similares. Por eso, NGINX puede procesar miles de solicitudes sin ninguna dificultad. También es la razón por la que NGINX se volvió excelente para sitios web concurridos como comercio electrónico, motores de búsqueda y almacenamiento en la nube.
NGINX contra Apache
Entre los servidores web populares, Apache es uno de los principales rivales de NGINX. Ha existido desde los años 90 y también tiene una gran comunidad de usuarios. Si tiene curiosidad acerca de qué servidor web es mejor para sus necesidades, eche un vistazo a esta breve e informativa comparación entre NGINX y Apache.
- Compatibilidad con SO
La compatibilidad es uno de los pequeños detalles que debe considerar al elegir el software. Tanto NGINX como Apache pueden ejecutarse en muchos sistemas operativos compatibles con el sistema Unix. Lamentablemente, el rendimiento de NGINX en Windows no es tan bueno como en otras plataformas. - Asistencia al usuario
Los usuarios, desde principiantes hasta profesionales, siempre necesitan una buena comunidad que pueda ayudarlos cuando enfrentan problemas. Si bien tanto NGINX como Apache tienen soporte de correo y un foro de desbordamiento de pila, Apache carece del soporte de su empresa, Apache Foundation. - Rendimiento
NGINX puede ejecutar simultáneamente 1000 conexiones de contenido estático dos veces más rápido que Apache y usa un poco menos de memoria. Sin embargo, cuando se compara su rendimiento en la ejecución de contenido dinámico, ambos tienen la misma velocidad. NGINX es una mejor opción para aquellos que tienen un sitio web más estático.
Más lecturas sobre NGINX
- Cómo crear una redirección usando NGINX
- Cómo instalar WordPress usando NGINX en Ubuntu
Conclusión
NGINX es un servidor web que también actúa como proxy de correo electrónico, proxy inverso y equilibrador de carga. La estructura del software es asincrónica y dirigida por eventos; que permite el procesamiento de muchas solicitudes al mismo tiempo. NGINX también es altamente escalable, lo que significa que su servicio crece junto con el tráfico de sus clientes. NGINX y Apache son, de hecho, dos de los mejores servidores web del mercado.