Redis
 sql >> Database >  >> NoSQL >> Redis

Come aggiornare Redis dopo aver aggiornato il database?

L'archivio dati e la cache effettivi dovrebbero essere sincronizzati utilizzando il terzo approccio che hai già descritto nella tua domanda.

Quando aggiungi dati al tuo archivio definitivo (cioè il tuo database SQL), devi accodare questi dati a un bus di servizio o a una coda di messaggi e lasciare che un servizio asincrono esegua l'intera sincronizzazione utilizzando una sorta di processo in background.

Non vuoi entrare in questi casi (quando non usi un bus di servizio e un servizio asincrono):

  • Rendi le tue richieste o processi più lenti perché l'utente deve attendere che i dati siano archiviati nel database e nella cache.
  • Correre il rischio di un errore durante il processo di memorizzazione nella cache e di non poter disporre di una politica di ripetizione (che di solito è una funzionalità incorporata in un bus di servizio o in alcune code di messaggi). Inoltre, questo errore può causare un danneggiamento parziale o completo della cache e non sarai in grado di pianificare automaticamente e facilmente alcune attività per risolvere questa situazione.

Informazioni sull'utilizzo della scadenza della chiave Redis, è una buona idea. Poiché Redis può far scadere le chiavi utilizzando il suo meccanismo integrato, non dovresti implementare la scadenza delle chiavi dall'intero processo in background. Se una chiave esiste è perché è ancora valida.

A proposito, non sarai sempre in questo caso (se una chiave non è scaduta significa che non dovrebbe essere sovrascritta). Potrebbe dipendere dal tuo dominio effettivo.