Uno de los puntos clave en Internet es la velocidad de respuesta y carga de una página, y más aún, en momentos de saturación. En pleno auge de la web dinámica, plagada de contenidos que se actualizan en tiempo real, son muchos los factores que influyen en dicho proceso.
Una vez superada la barrera física (la infraestructura y las conexiones), el servidor web es una pieza fundamental en el engranaje, y es por ello que hemos querido optimizarlo al máximo y mostraros los resultados de dicho proceso. Como siempre decimos, de la parte técnica nos encargamos nosotros, así que vamos a continuar este post de la forma más sencilla posible.
Cuando entramos a una página web, normalmente nos atiende un servidor web (Apache, Microsoft IIS…) que es el encargado de transformar nuestra petición en toda la información que vemos en pantalla. Pues bien, nosotros hemos decidido usar Apache como servidor principal y, como servidores adicionales (funcionando como sistemas de almacenamiento temporal), Nginx y Varnish.
Apache: Es nuestro motor principal, encargado de administrar la mayoría de contenidos dinámicos.
Nginx: Motor alternativo a Aapache, pero que en nuestro caso usamos para servir contenido estático (imágenes, documentos…) y que comprime todos los contenidos.
Varnish: Acelerador web, mantiene todos los contenidos habituales en memoria para poder atender miles de peticiones simultáneas a la máxima velocidad
Comportamiento
Cuando una web esté recibiendo visitas de forma constante, las peticiones irán a Varnish, y Varnish se las devolverá a los clientes directamente desde la memoria, sin necesidad de consultar el disco duro. Cuando se pase el tiempo de caché o alguna página la actualice (como publicar un nuevo post), Varnish irá a coger el nuevo elemento a Nginx. Desde que Varnish coge un elemento nuevo hasta que lo actualiza (periodo que no suele llevar más de 2 segundos), Varnish sigue sirviendo el objeto viejo, de forma que jamás se quedará sin él y los visitantes siempre accederán al contenido.
Un proceso muy parecido se aplica a Nginx, aunque a diferencia de Varnish, sólo cachea los contenidos estáticos, pidiendo siempre al servidor cualquier contenido dinámico. Cuando el objeto es actualizado o el tiempo de caché se agota, Nginx pide a Apache la última versión del fichero. Es un proceso que apenas dura unos milisegundos.
Ventajas
El uso de esta exitosa combinación tiene dos ventajas principales
Velocidad de respuesta: Gracias al uso de un acelerador como Varnish, las páginas plagadas de contenido e imágenes, se sirven en menos de un segundo, teniendo un tiempo medio de carga de entre 400ms y 800ms
No saturación: Sin duda, un elemento diferenciador donde los haya. Uno de los grandes problemas de Internet hoy en día es que un enlace en determinados lugares (como un perfil de Twitter muy conocido o páginas como Menéame), puede causar la interrupción del servicio o la saturación de la página. Pues bien, nuestros servidores son capaces de servir hasta 40.000 peticiones por segundo en una sola página sin ningún tipo de problema, garantizando así la plena disponibilidad del servicio bajo todo tipo de circunstancias.
Activación
Por defecto, todos nuestros servicios de hosting compartido cuentan con Apache y Varnish activado, mientras que Nginx se activa a petición del cliente. ¿Por qué? Mientras que Apache y Nginx funcionan perfectamente sin ningún tipo de configuración adicional, Nginx requiere de la configuración manual de nuestros técnicos, que han de determinar la configuración óptima para cada sitio web, a fin de obtener los mejores resultados.
Por supuesto, dicha activación es totalmente gratuita y se recomienda solicitarla una vez el sitio web haya sido construido y esté operativo. No obstante, aún sin estar Nginx activado, es Varnish quien se encarga de gestionar un pico de visitas importante y garantizar que el servicio funciona de forma normal.
Conclusión
– Activado por defecto, sin necesidad de configuración por parte del cliente
– Increíble velocidad de carga, inferior a 1 segundo en páginas estándar.
– Preparado para soportar miles de usuarios concurrentes
Referencias
Este mismo blog, como no podía ser de otra forma, está alojado en nuestros servidores, pero también puedes comprobar la alta velocidad de carga en páginas web de nuestros clientes como ZonaPixel (con Nginx), Albaaja (sin Nginx) o Federación Burgalesa (sin Nginx).
Quiero uno
Te lo ponemos más fácil que nunca, y es que desde 1.99€ al mes puedes tener tu propio espacio en la red con las mejores características del mercado. Puedes ver nuestras ofertas desde aquí.
¿Quiéres probarlo de forma totalmente gratuita durante 15 días? No tienes más que pedir tu prueba sin compromiso desde aquí.
Actualización: Actualmente, no se oferta esta opción en nuestros servidores de hosting compartido, ya que ha sido sustituida por unos servicios más eficientes. En los detalles técnicos de cada producto podéis encontrar sus reemplazos, como APC Cache. Sin embargo, podemos configurar esta solución en cualquier servidor dedicado o VPS.