Domanda

Come è il algoritmo di consenso in zattera diverso dal processo elettorale principale di MongodbFatto che MongoDB prende in considerazione altri fattori (priorità, ad esempio) mentre si eleva il Primario?

È stato utile?

Soluzione

Alcune differenze chiave sull'approccio di consenso come a MongoDB 2.4 sono:

    .
  • zattera utilizza un modello forte . Il leader ha la responsabilità di gestire la replica e i flussi di dati dal leader ad altri server. Nella replica mongodb Imposta i secondari Segui il registro operativo ( OPLOG ) di un host a monte che può essere il principale o un secondario con un nuovo oplog.

  • Raft ha solo tre stati nodi da considerare: leader (primario), follower (secondario) o candidato (primario nominato). MONGODB ha Ulteriori stati del nodo per prendere in considerazione i più potenziali stati di errore come RECOVERING o SHUNNED Nodi o replica ritardata set membri .

  • in raft Ogni nodo può votare solo per un nodo candidato una volta per termine elettorale. MongoDB consente di regolare i voti per nodo come parte della configurazione del set di replica, quindi alcuni nodi potrebbero essere non votanti o possibili avere più voti (Nota: la configurazione di voto multiplo è stata deprecata come Branch di sviluppo mongodb 2.5 ).

  • RAFT utilizza un approccio consolidato che consente a un cluster di continuare a funzionare durante le modifiche alla configurazione. Mongodb richiede una severizzazione rigorosa dei nodi di voto per eleggere un nuovo primario; Mentre un'elezione è in corso il set di replica non ha primario e non può accettare scritture

Per informazioni più dettagliate dovresti confrontare la carta zattera alla ricerca di un Algoritmo consenso comprensibile con la documentazione su mongodb replica set elections .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top