944 063 154

Blog

¿Qué es Varnish Cache y cómo ayuda a la optimización de una web?

Publicado enDesarrollo y Programación en noviembre 14, 2018 10:00 am

Cuando creamos un sitio web lo normal es que todo funcione correctamente; al menos en lo que a tiempos de carga de la web se refiere. Pero a medida que pasa el tiempo, es habitual que el rendimiento de la web ya no sea tan bueno. Como consecuencia del aumento de número de usuarios que llegan a nuestra página web, habrá que optimizarla para que la web vuelva a ser tan rápida como en sus inicios. Esta optimización puede hacerse de múltiples maneras; ya sea realizando modificaciones en el código de la web, reduciendo el peso de las imágenes, optimizando las consultas que se realizan a la base de datos o almacenando las consultas con herramientas como memcached; incluso, guardando las peticiones que se realizan al servidor con aceleradores de HTTP. Si nos decantamos por esta última opción, ya sea en exclusiva o combinada con alguna de las otras alternativas, podemos hacerlo con Varnish Cache.

Qué es Varnish Cache

Lanzado en 2006, Varnish es un acelerador de HTTP, también conocido como proxy inverso. Un software que, instalado en el servidor HTTP, permite compensar la pérdida de velocidad de una página web a causa del aumento de tráfico. La principal función de Varnish es cachear las respuestas del servidor. De esta forma, cada vez que se reciban peticiones HTTP será Varnish quien devuelva el contenido; en lugar de realizar una llamada al servidor real. Así, el tiempo necesario para servir una página web se reduce considerablemente. Además, Varnish permite al sistema operativo decidir qué contenido se almacena en el disco duro del servidor y qué se gurda en la memoria virtual de Varnish, evitando que la información se almacene en ambos sitios.

Para que esto sea posible, Varnish cuenta con su propio lenguaje de gestión de peticiones llamado VCL (Varnish Configuration Language). VCL permite hacer diferentes programaciones que condicionarán la respuesta de Varnish ante una petición HTTP. Estas suelen ser:

  • Enviar la petición al servidor y que sea éste quien se encargue de servirla.
  • Aceptar la solicitud realizada y servir el contenido desde su memoria virtual.
  • Rechazar la petición en función de los parámetros establecidos previamente.

Dado que su función es cachear el contenido de una página web que ya ha sido visitada, evitando así las llamadas al servidor, Varnish sólo enviará la petición HTTP al servidor original la primera vez que se visita una web. Cuando vuelva a producirse una solicitud parecida, será Varnish quien se encargue de servir el sitio web; ya que almacenó el contenido devuelto en la primera solicitud.

Cuándo instalarlo

La instalación de Varnish es recomendable en el caso de tiendas online o páginas web con variedad de contenido. Si es tu caso, instalar Varnish en tu servidor hará que tu posición en los resultados de búsqueda mejore y que tus usuarios accedan más rápido a tu web. Además, en los casos de ecommerce, Varnish Cache aumenta la tasa de conversión; ya que contarás con una tienda online de lo más optimizada.

Mejora la velocidad de carga de tu web sin que el aumento de visitas condicione la experiencia que prorpocionas a tus usuarios con Varnish Cache.