Varnish es un acelerador de aplicaciones web, también conocido como caché de proxy HTTP porque funciona como un proxy inverso. Es muy beneficioso para aplicaciones que tienen gran volumen de tráfico de datos, porque permite aumentar la velocidad del servicio mediante el registro de contenidos.

varnish cache

Todo el tráfico HTTP pasa por el servidor Varnish con la finalidad de usar la cache del mismo antes de realizar la petición a los servidores situados en el backend.

Se posiciona por delante del server web registrando la respuesta de dicho servidor en memoria. Así la próxima vez que el usuario visite la misma dirección URL, la página será suministrada desde Varnish en vez del servidor web, ahorrando recursos en el backend y permitiendo así conexiones simultáneas.

Se puede utilizar también como:

  • Balanceador de Carga; porque distribuye peticiones a varios servidores,
  • Control de acceso al servidor; permite conexiones desde la IP o IPs especificadas.

Características:

  • Tiene un lenguaje propio de configuración, llamado VCL (Varnish Configuration Language), con el que se define las reglas para registrar contenido.
  • Es estable y rápido, capaz de servir cientos de miles de peticiones por segundo, proporcionando a los administradores web la libertad de expresar su política deseada en vez de estar limitados.
  • Está escrito en lenguaje C, y es posible extender su funcionalidad con módulos llamados VMODs.
  • Es ideal para aumentar el rendimiento de las aplicaciones web.

Se instala como un paquete delante de cualquier servidor HTTP y se configura para almacenar en caché una copia del recurso solicitado. En varias distribuciones de Linux ya viene instalado (como Ubuntu)

Elementos de Varnish

FLEXIBILIDAD

La diferencia entre Varnish  y otros aceleradores de Internet es su gran flexibilidad que le permite adoptar el software a sus necesidades.

DINAMISMO

El contenido relevante que optimiza el tiempo resulta en mejores tasas de conversión de clientes. Varnish ayudará a entregar todo el contenido dinámico que quiera sin perjudicar el rendimiento de la web.