Invalide e faça entradas do cache expirarem
Limpe dados obsoletos e defina tempos limite.
Invalide e faça entradas do cache expirarem é uma aula grátis de Flask Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Flask Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Flask Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
The Hardest Part
Caching is easy until data changes. Invalidation means removing stale entries so users never see outdated content.
Time-Based Expiry
The simplest tool is a timeout. After the set seconds pass, the entry expires on its own and the next call refills it.
@cache.cached(timeout=30)Pick a Sensible TTL
Your TTL trades freshness for speed. A short one means more recomputes; a long one risks serving older data longer.
Delete One Key
When data changes now, do not wait for expiry. Call cache.delete with the key to evict that single entry at once.
cache.delete("user_42")Clear Everything
The blunt option is cache.clear, which wipes every entry. Use it sparingly, since it forces a full cold rebuild.
cache.clear()Evict a Memoized Result
For memoized helpers, reach for delete_memoized to drop a cached function result the moment its source data updates.
cache.delete_memoized(get_profile, user_id)Invalidate on Write
A clean pattern: right after you save a change, delete the matching cache key so the next read rebuilds it fresh.
db.session.commit()
cache.delete(key)Set vs Default Timeout
You can override expiry per entry with set and a timeout, ignoring the global default for that one value.
cache.set("k", v, timeout=10)Never-Expire Entries
Passing timeout=0 stores a value that never expires on its own. You then become responsible for deleting it.
cache.set("flag", True, timeout=0)Versioned Keys
A neat trick is putting a version in the key. Bump the version and every old entry is ignored without deleting anything.
key = f"posts_v{VERSION}"Stale Data Is a Bug
Treat showing outdated content as a real defect. Every write path should have a matching invalidation step planned.
Quick Check
A user updates their profile but the page still shows the old name.
Recap: Invalidation
You can expire by timeout, delete single keys, clear all, evict memoized results, and invalidate on write. Cache wisely! 🧠
Perguntas Frequentes
A aula “Invalide e faça entradas do cache expirarem” é grátis?
Sim — o texto completo de “Invalide e faça entradas do cache expirarem” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Flask Academy, atualize para CoddyKit PRO. O curso de Flask Academy inclui 4 aulas no total.
O que vou aprender em “Invalide e faça entradas do cache expirarem”?
Limpe dados obsoletos e defina tempos limite. Você pratica Flask Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Flask Academy?
Nenhuma experiência prévia é necessária. Flask Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Invalide e faça entradas do cache expirarem”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Flask Academy?
Sim. Cada aula de Flask Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Configure Flask-Caching
- Armazene uma visualização em cache com cached
- Memorize funções dispendiosas
- Invalide e faça entradas do cache expirarem