MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

C# MongoDb Connessione al problema del set di repliche

In questo momento sto imparando MongoDB e sto giocando con connessioni di set di repliche. Mi piace contribuire con 2 modi che ho usato per collegarmi al database che ho trovato utile, se non aiuta nessuno, almeno avrò un posto a cui fare riferimento in futuro (sono sicuro che andrò per averne bisogno ad un certo punto)first:

var connString = "mongodb://localhost:27029,localhost:27027,localhost:27028?connect=replicaSet";
var client = new MongoClient(connString);
var db = client.GetDatabase("test");

secondo:

var settings = new MongoClientSettings
{
   Servers = new[]
   {
      new MongoServerAddress("localhost", 27027),
      new MongoServerAddress("localhost", 27028),
      new MongoServerAddress("localhost", 27029)
   },
   ConnectionMode = ConnectionMode.Automatic,
   ReplicaSetName = "m101",
   WriteConcern = new WriteConcern(WriteConcern.WValue.Parse("3"),wTimeout:TimeSpan.Parse("10"))
};
var client = new MongoClient(settings);

Il primo, mi permette di collegarmi al database attraverso i server specificati nell'elenco dei server. Ciò consente al driver di connettersi automaticamente al nuovo nodo principale nel set di repliche in caso di errore con il principale. Con il secondo invio l'elenco dei server nel set di repliche, il tipo di connessione. Il nome del set di repliche e la configurazione del problema di scrittura. Con queste impostazioni, forzo il driver ad attendere una conferma di scrittura dai 3 server nel set di repliche (WValue:3) e ad attendere al massimo 10 secondi per la conferma di scrittura.