Recibe alertas instantáneas si tu sitio web cae
SMS Llamada Correo
Empezar a monitorizar

¿Qué es y qué hace el servidor web Nginx?

Autor: Redacción HOSTTEST   | 12 sept 2019

nginx WebserverUn servidor web se encarga de la comunicación entre un servidor (host) y una conexión externa (cliente) y sirve como interfaz entre ambos. Recibe la petición, la reenvía al propio sistema y devuelve la respuesta al equipo conectado. El software nginx es un servidor web muy flexible, eficiente y estable, servidor web adaptado a las necesidades de sitios web grandes con numerosas conexiones simultáneas y al procesamiento paralelo de la información. En cuanto a velocidad, muestra grandes ventajas frente al líder del mercado Apache 2, ya que utiliza un concepto distinto en la gestión y el tratamiento de los procesos individuales. Ambos sistemas ya los comparamos en este artículo.

 

Contenido:

El servidor web nginx como respuesta a las desventajas de Apache 2
Un servidor web especializado para sitios con cifras de visitas extremadamente altas
El funcionamiento técnico de nginx como servidor web
Similitudes entre nginx y Apache 2: una arquitectura modular

El servidor web nginx como respuesta a las desventajas de Apache 2

Para comprender las particularidades y las ventajas específicas de nginx, ayuda considerar su origen e historia. El servidor web se publicó en su primera versión en octubre de 2004 y fue desarrollado por el programador ruso Igor Sysoev, que diez años antes había completado con éxito sus estudios de informática en la Universidad Técnica Estatal de Moscú. Sysoev diseñó nginx pensando en las necesidades del buscador ruso Rambler, para cuya situación Apache 2, que hasta entonces casi mantenía un monopolio, no era adecuado.

La razón radica en la forma en que los servidores web Apache 2 gestionan las conexiones entrantes: el servidor inicia para cada cliente conectado un proceso propio, que a su vez consume tanto memoria como rendimiento de CPU y los reserva de forma exclusiva. Con un número bajo o medio de peticiones esto no supone un problema; sin embargo, cuando hay muchas conexiones simultáneas, la eficiencia —y por tanto la velocidad— disminuye de forma constante debido al creciente coste de gestionar los procesos. En concreto: cuanto más visitantes acceden simultáneamente a un sitio web con Apache 2 como servidor web, más recursos necesita el servidor para cada visitante.

 

Encuentra hosting web Nginx

Asegura ahora un hosting web con servidor Nginx

Comparativa de Hosting web Nginx

 

Un servidor web especial para sitios con un número de visitantes extremadamente alto

Para un sitio web con un volumen de visitantes extremadamente alto y, al mismo tiempo, con una duración de visita relativamente corta —condiciones que encajan casi a la perfección con las de un motor de búsqueda— el concepto de Apache 2 resulta sumamente inadecuado. Para satisfacer estos requisitos, un servidor web debe, sobre todo, cumplir las siguientes condiciones:

  • Muy alta eficiencia en la gestión de memoria
  • Procesamiento paralelo de numerosas conexiones
  • Alta velocidad en la entrega de información
  • Diseño flexible para diferenciar las solicitudes, p. ej., según su origen
  • Alto rendimiento del software
  • Posibilidad de ampliación con funciones adicionales
  • Soporte para la distribución de carga entre varios servidores
  • Compatibilidad con distintos lenguajes de scripting
  • Alta estabilidad incluso en condiciones críticas y con recursos limitados

A partir de estos requerimientos surgió nginx como servidor web modular, que incluso con cargas elevadas y con solicitudes simultáneas de mucho más de 10.000 o 100.000 clientes las gestiona de forma eficiente y las procesa con gran rapidez.

Infórmate sobre cómo se compara Nginx con otros servidores web:

Nginx vs. LiteSpeed
Nginx vs. Apache

El funcionamiento técnico de nginx como servidor web

Una diferencia esencial entre nginx y Apache 2 reside en la gestión de los procesos que mantienen la conexión con los clientes hasta que la comunicación se da por finalizada por una de las partes. Apache 2 inicia para cada cliente un proceso hijo propio para aislarlo de los demás y crear así estabilidad. En contraste, el servidor web nginx agrupa las solicitudes en una instancia y es capaz de procesar varios miles de ellas mediante un único proceso hijo. De este modo, elimina una de las mayores desventajas de Apache 2: el coste computacional que crece de forma exponencial con el aumento de visitantes, destinado únicamente a la gestión de recursos y que limita cada vez más al servidor web en cuanto a velocidad y eficiencia. Un competidor más reciente, que también apuesta por la velocidad, es el servidor web LiteSpeed.

Más información sobre la distribución de las cuotas de mercado entre los servidores web puede consultarse en nuestra visión general de servidores web.

Similitudes entre nginx y Apache 2 - una arquitectura modular

Para optimizar el rendimiento del software, un servidor web debe ser lo más compacto posible en su base y hacer un uso comedido de los recursos disponibles. Al mismo tiempo, debe adaptarse a distintos entornos y tareas para proporcionar la flexibilidad necesaria ante condiciones y desafíos cambiantes. Tanto Apache 2 como nginx logran esto mediante una arquitectura modular, en la que el programa principal puede personalizarse según las necesidades mediante distintas extensiones y ampliarse con diferentes funciones y capacidades. Estos módulos abarcan numerosas categorías diferentes y sirven para fines específicos como, por ejemplo:

  • Localización: procesamiento de las solicitudes según la ubicación del cliente
  • Interfaces: conexión a intérpretes externos como lenguajes de script
  • Compresión: tráfico de datos más eficiente mediante la compresión de la información
  • Multimedia: entrega de imágenes, vídeos o transmisiones mediante protocolos especiales
  • Seguridad: identificación y autenticación de clientes
  • Cifrado: aplicación de criptografía segura como SSL y TLS
  • Monitorización: supervisión y registro (logging) para el servidor web
  • Reenvío y redirección: reescritura interna de direcciones según reglas definidas
  • Comunicación: ampliación con soporte para protocolos de correo o chat

Numerosos módulos, como el cifrado conforme al estándar SSL, forman parte del equipamiento básico de nginx; otros deben integrarse en el servidor web a petición. Aquí surge otra diferencia clara entre nginx y Apache 2. Debido a su estructura estática, nginx —con pocas excepciones— no soporta la carga posterior de módulos como componentes externos. Deben integrarse ya en la compilación de nginx, mientras que Apache 2 los inserta, activa o elimina en cualquier momento, de forma independiente de su núcleo. Sin embargo, algunas funcionalidades, como .htaccess en Nginx, no están disponibles.

 

Encuentra alojamiento web con Nginx

Asegura ahora tu alojamiento web con servidor Nginx

Ir a la comparativa de alojamiento web Nginx

 

Foto: dlohner pixabay.com

Escribe un comentario


Más proveedores de hosting


Más artículos interesantes