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

Timeout del driver C# MongoDB

Ecco la parte più importante del tuo messaggio di errore:

Client view of cluster state is
{  
   ClusterId: "1",
   ConnectionMode: "ReplicaSet",
   Type: "ReplicaSet",
   State: "Disconnected",
   Servers: [{  
      ServerId: {
         ClusterId: 1,
         EndPoint: "Unspecified/wsmongodb001:27017"
      },
      EndPoint: "Unspecified/wsmongodb001:27017",
      State: "Disconnected",
      Type: "Unknown",
      HeartbeatException: "[...] System.Net.Sockets.SocketException: No such host is known [...]"
   }]
}

Nota il "Nessun host di questo tipo è noto" parte del campo HeartbeatException .

Il set di repliche è configurato con nomi host anziché indirizzi IP. Apparentemente, la tua applicazione client non può risolvere wsmongodb001 a un indirizzo IP.

Dovrai:

  1. Assicurati che il tuo set di repliche sia attivo e funzionante. Connettiti manualmente a uno dei server da mongo shell, esegui rs.status() e controlla che ci sia una primaria e non ci siano errori.
  2. Assicurati che tutti nomi di dominio configurati nel set di repliche tramite rs.conf() sono accessibili all'app client. Se non sei sicuro che lo siano, apri un prompt dei comandi sul computer che esegue l'app e ping ogni nome di dominio.