Borrado de Caché en Desarrollo Web
Tags: cache, webdev, architecture, distributedsystems
Published: 2019-09-17 22:05:41

## Opciones de borrado de caché en los diferentes servidores y servicios de Internet, desde el origen hasta el cliente o navegador del usuario final.

En el [artículo anterior](https://dev.to/omarcarpinteyro/cache-para-dummies-inception-229b) de esta serie, aprendimos los principales cachés que podemos citar como básicos en internet.

Ahora, daremos respuesta a una de las preguntas más relevantes y su respuesta es aun más importante: **¿Cómo se ejecuta el borrado de caché?**

Primero entendamos el origen de esta pregunta, para ello, debemos saber que el tiempo de vida de caché, no es constante, tenemos el poder de colocar el valor de tiempo que queremos mantener en memoria cierta información, el tiempo de caché.

> _El tiempo en que la información se guarda en caché lo tenemos que configurar._

Podrían existir valores configurados por default, pero al final, es un valor que se configura sí o sí.

> _Una vez configurado el tiempo en caché que vivirá una información en memoria, en disco duro, no podrá ser borrada hasta que se cumplan ciertas condiciones._

## ¿Cómo es el borrado del caché?

Veamos de manera simple y básica las opciones que tenemos para borrar el caché:

**Forzado.** Para borrar el caché de CDN o Egde, existe el Purge, que es un término que se usa para hacer referencia al borrado de caché de uno o varios elementos. Básicamente consiste en indicar las URLs o Paths que quieres que el CDN borre de su caché, de su disco duro. Una vez ejecutado el Purge el CDN irá a sus diferentes zonas y borrará los archivos indicados. Algunos CDNs incorporan el Fast Purge, que asegura el borrado de caché a nivel mundial en tiempos record.

Desde el Cliente (el Browser), la única manera de borrar el caché es hacerlo desde las mismas configuraciones del navegador. Por ejemplo, para conocer cómo se borra el caché de Google Chrome, podemos ir aquí. Para usuario más creativos y avanzados podrían ir directamente al disco duro de su computadora y borrar los archivos temporales o de caché.

**Por tiempo o automático.** Tanto para Caché de Cliente o CDN, podemos programar el borrado por tiempo. Por ejemplo, si configuramos el caché a 3600 segundos para que viva nuestra información en memoria, comenzará una cuenta regresiva en el navegador o en el CDN y una vez que este conteo llegue a cero, la información se borrará de caché automáticamente.

Otra manera de usar el tiempo automático a nuestro favor, es configurar una fecha futura para borrado de caché. La fecha es configurada en formato Fecha y Hora exacta en la que queremos que la información sea borrada. Cuando se valide la fecha y hora indicada y dicha fecha es cumplida, el caché es borrado.

## Hacks

Te dejo un truco para borrar el caché del cliente, y para ello nos ayuda de manera oportuna el Algoritmo de Eviction, el cual vive por default en los navegadores. Y nos ayuda a validar si un recurso en caché sigue siendo “llamado” o “referido” desde el mismo origen en que nació. Por ejemplo, si guardamos la imagen _hola.jpg_ en caché por medio de la página _www.hola.com_, si en la siguiente visita que hagamos a la misma página ya no existe el llamado a la imagen _hola.jpg_, el navegador la borrará de su caché automáticamente.

**Precaución:** si no se configura un caché correctamente en nuestra arquitectura, podríamos dejar a nuestros usuarios cachados por largos tiempos y no verán nunca nuestros cambios futuros.

###### _Foto por [Markus Spiske](https://unsplash.com/@markusspiske) de [Unsplash](https://unsplash.com/search/photos/hard-disc)_