El otro día, durante una daily stand-up, estábamos discutiendo cómo mejorar la velocidad de nuestro sitio web principal. La mayoría de las soluciones propuestas estaban relacionadas con el caching a nivel de software. Mi propuesta fue un poco diferente, ya que en el pasado, cuando trabajaba en la infraestructura de Magento, descubrí Varnish.

Varnish es un software de caché que puede ser implementado como un proxy inverso. Todas las requests son recibidas primero por Varnish, y luego, basado en su archivo de configuración, la respuesta puede ser cacheada o permitir que la solicitud llegue al servidor de origen. La primera vez que Varnish inicia, cuando recibe una request, valida que no haya una copia cacheada de ella. Si no hay contenido cacheado, lo considerará un miss y pasará la request al servidor de origen. Si el archivo o contenido esta configurado para ser cacheado, guardará el contenido en memoria, y la próxima vez que la misma request llegue a tu servidor, regresara el contenido inmediatamente.