Métodos de invalidado
Disponemos de dos métodos para invalidar contenido: lo que llamamos PURGE, que son invalidaciones sencillas en las que invalidas un objeto en particular, y las de tipo BAN, que son invalidaciones recursivas que nos permiten invalidar más de un objeto a la vez.

Cache Key

La cache key o clave de caché es la forma que tiene la CDN de guardar un objeto en su caché. De manera predeterminada, la cache key está formada por:
1
[Host header] + [url] + [Query Stream]
Copied!
A partir de ahí, podemos complicar la cache key todo lo que queramos, añadiendo más elementos para guardar más versiones del mismo objeto. Veámoslo con un ejemplo:
1
https://www.transparentcdn.com/index.html?param=1
2
3
https://www.transparentcdn.com/index.html?param=2
Copied!
Para Transparent Edge Services y, en general, para cualquier sistema de cachés http, estos son dos objetos distintos. Por tanto, aunque el primero esté cacheado, cuando se solicite el segundo, volverá a bajar a origen.
Mediante la cabecera Vary podemos modificar el comportamiento y guardar más versiones del mismo objeto. Por ejemplo, dado un objeto como este
1
https://www.transparentcdn.com/index.html?param=1
Copied!
y una cabecera Vary como esta
1
Vary: User-Agent
Copied!
podemos hacer que en la caché de la CDN se guarden tantos objetos como User-Agent lo soliciten.
Este ejemplo en particular hace que la eficiencia de la caché baje drásticamente, por lo que no es recomendable tener un Vary por User-Agent o por Cookie. Podría ser interesante, por ejemplo, tenerlo por la cabecera X-Device, de manera que puedas servir diferentes versiones del objeto en función del tipo de dispositivo que solicita el recurso.

Invalidaciones simples o de tipo PURGE

Este tipo de invalidaciones nos permiten invalidar un contenido en particular de la caché. Para ello deberás asegurarte de meter la url completa con parámetros incluidos.
Si has modificado el comportamiento de la cache key con la cabecera Vary, en principio no deberías preocuparte. Una invalidación de este tipo debería invalidar todas las versiones que existan de ese objeto en particular.
Para llevar a cabo una invalidación desde nuestro dashboard puedes seguir esta guía.

Invalidaciones recursivas o de tipo BAN

Las invalidaciones de tipo BAN permiten invalidar contenido de la caché de forma recursiva, enviando un patrón e indicándole a la caché que invalide cualquier objeto que coincida con dicho patrón. Por ejemplo, podemos mandar a invalidar la url https://www,transparentcdn.com/images/. Esto invalidará cualquier objeto que coincida con esta url por ejemplo https://www,transparentcdn.com/images/imagen1.png o https://www,.ransparentcdn.com/images/2020/02/22/index.php.
Para llevar a cabo una invalidación desde nuestro dashboard puedes seguir esta guía.
Este tipo de invalidaciones son incompatibles con la funcionalidad de refecthing.
Este tipo de invalidados, en según que casos, puede resultar muy peligroso. Por ejemplo, si invalidas / (https://www.transparentcdn.com/) de forma recursiva, puedes tener serios problemas en tu plataforma de origen, ya que tendrá de pronto un aluvión de tráfico procedente de todos tus usuarios. Úsalo con cabeza.
Recuerda que todo lo que puedes hacer desde nuestro dashboard puedes hacerlo desde nuestro API.
Última actualización 9d ago