¿Qué es el Tiempo de vida (TTL)?

En el contexto de una Red de distribución de contenido como Fastly, el valor de Tiempo de vida (TTL) es la cantidad de tiempo que un objeto específico permanecerá en la caché. El Tiempo de vida también se conoce a veces como la vida útil de actualización de un objeto porque, una vez que se alcanza o supera el Tiempo de vida, el objeto se vuelve obsoleto, lo que significa que probablemente haya una versión más nueva y “más reciente” del objeto disponible para entregarla a los clientes. 

¿Cómo funciona el Tiempo de vida?

Cada objeto contiene encabezados HTTP que se usan para pasar información entre el cliente y el servidor de origen en la solicitud y la respuesta. Puedes establecer ciertos encabezados HTTP en la respuesta para controlar qué contenido se almacena en caché y su Tiempo de vida. Encabezados como Cache-Control y Expires te permiten determinar la cantidad máxima de tiempo que el objeto en caché se usa para responder solicitudes sin consultar al servidor de origen. Después de que expire el Tiempo de vida, el objeto puede conservarse en el almacenamiento, pero no se usará para responder solicitudes hasta que pueda revalidarse con el origen.

¿Por qué importa el Tiempo de vida?

Entregar contenido implica un costo, tanto en términos de tu costo de salida, que es el costo que los proveedores de hosting cobran por mover contenido fuera del almacenamiento, como del costo para tus clientes en latencia, el tiempo que pasan esperando tu contenido. 

Ser estratégico con el Tiempo de vida puede ayudarte a gestionar ambos costos. Por ejemplo, podrías optar por dar al contenido estático un Tiempo de vida más alto, porque ese contenido normalmente permanece relativamente sin cambios y no habrá una versión más reciente en tu origen. Piensa en imágenes, archivos CSS o JavaScript. Al mantener este contenido en caché durante más tiempo, puedes hacer menos viajes a tu origen, lo que reduce el costo de salida. Y, como el contenido se sirve desde la caché, el tiempo de latencia para tus clientes se reduce.

Por otro lado, el contenido dinámico, o contenido que cambia en un intervalo impredecible, probablemente debería tener un Tiempo de vida más bajo. Esto garantiza que se entregue la información más actualizada. Por ejemplo, elementos como las noticias de última hora, el contenido generado por el usuario y el inventario actual de artículos de la tienda son tipos de contenido que cambian de forma impredecible. Configurar el Tiempo de vida correcto te ayuda a equilibrar las necesidades de los usuarios con el costo de tu negocio.  

Mejores prácticas de Tiempo de vida

Configurar el Tiempo de vida correcto te ayuda a equilibrar el rendimiento, los costos y la disponibilidad. 

  • Un Tiempo de vida más alto significa menos viajes a tu origen para obtener contenido “nuevo”.

  • Un Tiempo de vida más bajo significa que el objeto en caché expira más rápido y que las actualizaciones desde la caché ocurren con más frecuencia. 

Usa un Tiempo de vida más alto para el contenido estático que probablemente no tendrá cambios importantes: imágenes, CSS, archivos JavaScript. Usa un Tiempo de vida más bajo para el contenido dinámico que cambia en intervalos impredecibles. Esto garantiza que los usuario siempre tengan contenido actualizado. 

Debido a que las Red de distribución de contenido como Fastly no pueden invalidar la caché del navegador web de un usuario final, por lo general es más fácil purgar objetos de la caché, y está más bajo tu control, que borrar la caché de los navegadores web de los usuarios. Por esa razón, puede tener sentido establecer distintos TTL para el contenido en la caché frente al de los navegadores web de los usuarios. 

Puedes establecer distintos tiempos de vida para la caché frente a los navegadores web mediante encabezados HTTP Surrogate-Control definidos por el W3C. Usa estos encabezados HTTP para establecer un tiempo de vida largo para los elementos en caché, pero un tiempo de vida más corto para los usuarios que ven ese objeto en un navegador web.

Tiempo de vida en Fastly 

No existe un enfoque único para el almacenamiento en caché: las necesidades de cada persona pueden ser ligeramente diferentes. En un escenario real, los requisitos de caché dependerán de diversos factores, y necesitas la flexibilidad para elegir cuánto tiempo almacenar en caché el contenido estático frente al contenido dinámico. 

Debido a que es muy fácil depurar un servicio de Fastly, ya sea para una sola URL, un grupo de recursos con etiqueta o toda la caché de un servicio, puedes permitirte configurar un Tiempo de vida largo al guardar elementos en la caché de Fastly. Un Tiempo de vida largo aumenta tu índice de aciertos de caché y la capacidad de respuesta de tu sitio para el usuario final, y cuando necesitas depurar contenido nuevo, normalmente solo toma unos segundos.

Cuando necesitas control variable para tu Tiempo de vida, Fastly ofrece varias opciones, entre ellas:

¿Qué sigue?

Consulta nuestra guía de prácticas recomendadas de almacenamiento en caché para obtener más información sobre cómo los diferentes encabezado HTTP afectan el Tiempo de vida y otros comportamientos de almacenamiento en caché. 

Aprende sobre la Red de distribución de contenido de Fastly

Más información

¿Estás listo para empezar?

Ponte en contacto con nosotros