Redis vs Zookeeper

24

Sembra sciocco confrontare questi due server considerando che sono pensati per cose molto diverse. Ma se ci pensi, possono fare molte cose simili: memorizzazione dei dati di configurazione, blocco distribuito, accodamento, ecc.

Ho un'istanza di Redis che sto usando per alcune cose legate alla produzione, ma vorrei fare una semplice sincronizzazione tra i server (principalmente modifiche di configurazione che non richiedono il push up del codice e il semplice blocco tra i server). Cosa vuol dire Zookeeper che Redis non sarebbe?

    
posta Jason Baker 11.06.2011 - 01:41
fonte

1 risposta

25

Usiamo sia Redis che Zookeeper sul posto di lavoro, quindi proviene da esperienze di prima mano

Redis è veloce; davvero, davvero veloce. È anche immediatamente coerente, quindi è utile per i set di dati in rapido movimento. Lo svantaggio è che, se si esegue su un server, se fallisce, si perde l'accesso in scrittura fino a quando un altro server prende la sua posizione. Sostituire il server è un'operazione manuale a meno che non lo si automatizzi da solo. (È ancora possibile ottenere l'accesso in lettura ai dati se si configura un'istanza slave).

Zookeeper offre anche immediata coerenza. Non è la metà veloce, ma si ripristinerà automaticamente (ove possibile) di fronte a un guasto, quindi se hai bisogno di un accesso in scrittura continuo, anche quando i tuoi server non funzionano, ti consigliamo di utilizzare Zookeeper.

Il mio consiglio è di usare zookeeper per il coordinamento: tenere traccia dei nodi attivi, elezione dei leader tra un gruppo, ecc. Utilizzare i redis per i set di dati che richiedono scritture veloci ma dove l'interruzione occasionale non è un disastro. Hit counters per pagine web, per esempio.

    
risposta data 10.02.2012 - 10:38
fonte

Leggi altre domande sui tag