Invalide y caduque entradas de caché
Elimine datos obsoletos y establezca tiempos de espera.
Invalide y caduque entradas de caché es una lección gratuita de Flask Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Flask Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Flask Academy incluye 4 lecciones en total.
La parte más difícil
La caché es fácil hasta que cambian los datos. La Invalidation consiste en eliminar las entradas obsoletas para que los usuarios nunca vean contenido desactualizado.
Caducidad basada en el tiempo
La herramienta más sencilla es un timeout. Cuando transcurren los segundos establecidos, la entrada caduca por sí sola y la siguiente llamada la vuelve a rellenar.
@cache.cached(timeout=30)Elegir un TTL adecuado
Su TTL establece un equilibrio entre actualidad y velocidad. Uno corto implica más recálculos; uno largo puede servir datos antiguos durante más tiempo.
Eliminar una clave
Cuando los datos cambien, no espere a que caduquen. Llame a cache.delete con la clave para expulsar esa entrada inmediatamente.
cache.delete("user_42")Borrar todo
La opción más drástica es cache.clear, que elimina todas las entradas. Úsela con moderación, ya que obliga a reconstruir toda la caché desde cero.
cache.clear()Expulsar un resultado memoizado
Para funciones auxiliares memoizadas, use delete_memoized para eliminar el resultado almacenado en cuanto se actualicen sus datos de origen.
cache.delete_memoized(get_profile, user_id)Invalidar al escribir
Un patrón claro: justo después de guardar un cambio, delete la clave de caché correspondiente para que la siguiente lectura la reconstruya con datos actuales.
db.session.commit()
cache.delete(key)Timeout establecido frente a predeterminado
Puede sustituir la caducidad de cada entrada con set y un timeout, ignorando el valor predeterminado global para ese valor concreto.
cache.set("k", v, timeout=10)Entradas que nunca caducan
Pasar timeout=0 almacena un valor que no caduca por sí solo. A partir de ese momento, usted será responsable de eliminarlo.
cache.set("flag", True, timeout=0)Claves versionadas
Un truco útil consiste en incluir una version en la clave. Incremente la versión y todas las entradas antiguas se ignorarán sin necesidad de eliminarlas.
key = f"posts_v{VERSION}"Los datos obsoletos son un error
Considere mostrar contenido desactualizado como un defecto real. Toda ruta de escritura debería tener planificado un paso correspondiente de invalidation.
Comprobación rápida
Un usuario actualiza su perfil, pero la página sigue mostrando el nombre antiguo.
Resumen: invalidación
Puede hacer caducar entradas mediante timeout, eliminar claves individuales, borrarlo todo, expulsar resultados memoizados e invalidar al escribir. ¡Use la caché con criterio! 🧠
Preguntas frecuentes
¿La lección «Invalide y caduque entradas de caché» es gratis?
Sí — el texto completo de «Invalide y caduque entradas de caché» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Flask Academy, actualiza a CoddyKit PRO. El curso de Flask Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Invalide y caduque entradas de caché»?
Elimine datos obsoletos y establezca tiempos de espera. Practicas Flask Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Flask Academy?
No se requiere experiencia previa. Flask Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.
¿Cuánto tiempo toma la lección «Invalide y caduque entradas de caché»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Flask Academy?
Sí. Cada lección de Flask Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Configure Flask-Caching
- Almacene en caché una vista con cached
- Memorice funciones costosas
- Invalide y caduque entradas de caché