NGINX es un open source software utilizado para servidores web, proxy inverso, almacenamiento en caché, equilibrio de carga o transmisión multimedia, entre otros. Originalmente diseñado como un servidor web para ofrecer el máximo rendimiento y estabilidad, NGINX también puede funcionar como servidor proxy para correo electrónico (IMAP, POP3 y SMTP), así como proxy inverso y equilibrador de carga para servidores HTTP, TCP y UDP.
Igor Sysoev desarrolló originalmente NGINX para resolver el problema C10K, un término acuñado en 1999 para describir la dificultad de los servidores web existentes para gestionar grandes volúmenes (los 10K) de conexiones concurrentes (la C). Con su arquitectura asíncrona basada en eventos, NGINX revolucionó el funcionamiento de los servidores en entornos de alto rendimiento, convirtiéndose en el servidor web más rápido disponible.
Después de abrir el proyecto en 2004 y ver cómo su uso crecía exponencialmente, Sysoev cofundó NGINX, Inc. para apoyar el desarrollo continuo de NGINX y comercializar NGINX Plus como un producto empresarial con características adicionales diseñadas para clientes corporativos. En 2019, NGINX, Inc. se integró en F5, Inc. Hoy en día, tanto NGINX como NGINX Plus son capaces de gestionar cientos de miles de conexiones simultáneas y alimentar más de los sitios más activos de Internet que cualquier otro servidor.
El objetivo de NGINX era crear el servidor web más rápido del mundo, y mantener esa excelencia sigue siendo un objetivo central del proyecto. NGINX supera sistemáticamente a Apache y a otros servidores en las pruebas comparativas que miden el rendimiento de los servidores web. Sin embargo, desde el lanzamiento original de NGINX, los sitios web han pasado de ser simples páginas HTML a contenidos dinámicos y polifacéticos. NGINX ha crecido con ello y ahora es compatible con todos los componentes de la Web moderna, incluidos WebSocket, HTTP/2, gRPC y la transmisión de múltiples formatos de vídeo (HDS, HLS, RTMP y otros).
Aunque NGINX se hizo famoso como el servidor web más rápido, su arquitectura escalable subyacente ha demostrado ser ideal para muchas tareas web más allá de servir contenidos. Dado que puede gestionar un gran volumen de conexiones, NGINX se utiliza habitualmente como proxy inverso y equilibrador de carga para gestionar el tráfico entrante y distribuirlo a servidores ascendentes más lentos, desde servidores de bases de datos heredados hasta microservicios.
NGINX también se coloca con frecuencia entre los clientes y un segundo servidor web, funcionando como terminador SSL/TLS o acelerador web. Actuando como intermediario, NGINX gestiona de manera eficiente tareas que podrían ralentizar el servidor web, como la negociación SSL/TLS, así como la compresión y almacenamiento en caché de contenido para mejorar el rendimiento. Los sitios dinámicos, que pueden estar construidos con tecnologías como Node.js o PHP, suelen implementar NGINX como caché de contenido y proxy inverso, lo que reduce la carga en los servidores de aplicaciones y optimiza el uso del hardware subyacente.
NGINX Plus y NGINX son las mejores soluciones de distribución de aplicaciones y servidores web de su clase utilizadas por sitios web de alto tráfico como Dropbox, Netflix y Zynga. Más de 350 millones de sitios web de todo el mundo confían en NGINX Plus y NGINX Open Source para ofrecer sus contenidos de forma rápida, fiable y segura.