2015-10-14 20 views
11

che è più adatto per l'ambiente seguente:Redis o Ehcache?

  1. persistenza non una costrizione.
  2. Più server (con Ehcache è necessario un po 'di sincronizzazione della cache).
  3. Scritture non frequenti e letture frequenti.
  4. Database relativamente piccolo (requisito di memoria molto inferiore).

Verserò quello che mi passa per la testa. Potrei sbagliarmi su questi.

So che Redis richiede un server separato (?) E Ehcache fornisce la cache locale, quindi deve essere più veloce ma replicherà la cache tra i server (?). L'aggiornamento di tutte le cache dopo un aggiornamento su uno è possibile con Ehcache.

La mia domanda è quale si adatta meglio all'ambiente che ho menzionato?
La cui prestazione sarà migliore o quali sono gli scenari in cui uno può sovraperformare un altro?

Grazie in anticipo.

+0

redis .......... – Jaiwo99

+0

un po 'di spiegazione ?? –

+0

dal punto di vista dello sviluppatore (java // spring), è molto più semplice implementare – Jaiwo99

risposta

19

si può pensare Redis come un comune struttura di dati, mentre EHCache è un blocco di memoria memorizzare oggetti dati serializzati. Questa è la differenza principale.

Redis come una struttura dati condivisa significa che si può mettere un po 'predefiniti struttura dati (come String , Lista, Setetc) in una lingua e recuperarla in un'altra lingua. Ciò è utile se il tuo progetto è multilingue, ad esempio: Java il lato back-end e PHP il lato anteriore. È possibile utilizzare Redis per una cache condivisa. Ma può solo memorizzare una struttura di dati predefinita, non è possibile inserire oggetti Java che si desidera.

Se il progetto è solo Java, ovvero non multilingue, Ehcache è una soluzione conveniente.