WoodyLabBuild with UIMS

Guida · In produzione

Cache e invalidazione

Il momento in cui una modifica «non si vede» arriva per tutti. Quasi sempre la risposta è che si vede, ma non ancora.

Dove siamo

Hai costruito un sito intero. Alla fine di questo capitolo saprai perché a volte una modifica compare subito e a volte no.

Come funziona

Ogni lettura porta con sé i propri tag: uno per la collection e uno per il documento, per id o per slug. Un salvataggio invalida i tag di quel documento, e le pagine che lo avevano letto vengono ricostruite.

Non serve sapere chi ha letto cosa: il tag è la risposta a quella domanda, e lo porta la lettura, non il chiamante.

pages-list        // la collection
pages_<id>        // il documento per id
pages_<slug>      // il documento per slug

Cosa non invalida

Una scrittura che disabilita la revalidation — è il caso dei seeder, che girano fuori da una richiesta — non tocca nessun tag. Il dato in database è nuovo e la pagina servita è ancora quella di prima.

Le sorgenti esterne non hanno tag affatto: invecchiano a tempo. Una modifica all’origine si vede quando la loro finestra scade.

Quando non funziona

Semina qualcosa e ricarica: probabilmente non lo vedi. Non è il seeder che ha fallito — controlla in database prima di cercare nel codice.

È la stessa forma di problema che si incontra con la select che mostra vuoto un valore sconosciuto: tutto ha funzionato, e il risultato non è quello che ti aspetti.

Avanti

Ultimo capitolo: mettere online.

Cache e invalidazione · WoodyLab