Invalida la cache su più applicazioni

1

Abbiamo una suite di applicazioni che include un sito Web, un'applicazione client e più servizi Windows. Tutte queste applicazioni funzionano sullo stesso set di dati e utilizzano una cache in memoria. Certamente, questa installazione fallisce quando una delle applicazioni fa qualcosa che invalida la cache. Sto cercando una soluzione che mi consenta di invalidare la cache tra le applicazioni. Abbiamo alcune idee, ma sono sicuro che le menti collettive di Internet possono darci una soluzione migliore.

Alcuni dettagli:

  • questa è un'applicazione legacy, il che significa che vorremmo mantenere le modifiche il più possibile non invasive
  • Siamo titubanti nell'introdurre un altro componente mobile nella soluzione. Quindi usare una cache esterna è fuori.
posta Lodewijk 22.04.2013 - 13:04
fonte

1 risposta

1

Bene, penso che dovrai aggiungere un 'pezzo mobile' qui, se vuoi un nuovo tipo di movimento:).

Mi sembra che dovrai implementare una sorta di messaggistica tra le applicazioni per dire loro di invalidare (parte della) cache.

Non è chiaro nella domanda se l'intera cache non sia valida per qualche motivo, o se (molto più comune) un sottoinsieme della cache sta diventando non valido.

In entrambi i casi, ci sono un sacco di opzioni su come implementare la messaggistica. Devi considerare quale è più semplice, la messaggistica o una cache esterna. Penso che molte persone siano d'accordo sul fatto che la cache esterna sia una soluzione migliore del tentativo di mantenere la concorrenza tra le varie cache sovrapposte.

Un ultimo pensiero, puoi anche schivare questo proiettile se puoi accettare risposte errate dalla cache per determinati periodi di tempo. Ad esempio, se ogni app ricaricasse 1/5 della sua cache ogni minuto, lo scenario peggiore sarebbe che una chiave cambia immediatamente dopo che è stata ricaricata. Quindi per i prossimi 5 minuti, quella chiave è sbagliata, ma verrà ricaricata dopo 5 minuti e assumerà il valore corretto.

    
risposta data 22.04.2013 - 13:13
fonte

Leggi altre domande sui tag