sql >> Base de Datos >  >> NoSQL >> MongoDB

Problema de conexión de C# MongoDb a conjunto de réplicas

En este momento estoy aprendiendo MongoDB y estoy jugando con conexiones de conjuntos de réplicas. Me gusta contribuir con 2 formas que he usado para conectarme a la base de datos que encontré útiles, si no ayuda a nadie, al menos tendré un lugar para consultar en el futuro (estoy seguro de que voy necesitarlo en algún momento)primero:

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

segundo:

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);

El primero, me permite conectarme a la base de datos a través de los servidores especificados en la lista de servidores. Esto permite que el controlador se conecte automáticamente al nuevo nodo principal en el conjunto de réplicas en caso de falla con el principal. Con el segundo, envío la lista de servidores en el conjunto de réplicas, el tipo de conexión. El nombre del conjunto de réplicas y la configuración de preocupación de escritura. Con esta configuración, obligo al controlador a esperar un reconocimiento de escritura de los 3 servidores en el conjunto de réplicas (WValue:3) y esperar como máximo 10 segundos para la confirmación de escritura.