si sincronizza automaticamente con il DB quando c'è una modifica nei dati nel DB
No, non è così.
dovremo implementare la strategia di sincronizzazione, se sì, qual è il modo migliore per farlo.
Questo dipenderà dal tuo caso particolare. Di solito le cache vengono sincronizzate in due modi comuni:
-
Dati memorizzati nella cache con scadenza . Una volta che i dati memorizzati nella cache sono scaduti, un processo in background aggiunge nuovi dati alla cache e così via. Di solito ci sono dati che verranno aggiornati a intervalli diversi:10 minuti, 1 ora, ogni giorno...
-
Dati memorizzati nella cache su richiesta. Quando un utente richiede alcuni dati, tale richiesta passa attraverso la strada non memorizzata nella cache e tale richiesta memorizza il risultato nella cache e un numero limitato di richieste successive leggerà direttamente i dati memorizzati nella cache se la cache è disponibile. Anche questo approccio può rientrare nel numero 1 in termini di intervallo di invalidamento della cache.
Ora credo che tu abbia abbastanza dettagli per pensare a quale potrebbe essere la tua migliore strategia nel tuo caso particolare!