Muss ich den gesamten Host für Replikate in Mongoose, Express-Session-Mongo und Mongolian angeben?

StackOverflow https://stackoverflow.com/questions/8364808

Frage

Ich habe MongoDB -Replikat -Set als:

Host1: 10.10.10.1:27017
Host2: 10.10.10.1:27018
Host3: 10.10.10.2:27017
Host4: 10.10.10.2:27018

Wenn ich die Verbindung (zB in Mongoose) festlegt, muss ich Folgendes tun:

mongoose.connectSet('mongodb://10.10.10.1:271017/mydb,
mongodb://10.10.10.1:27018/mydb,
mongodb://10.10.10.2:27107/mydb, mognodb://10.10.10.27108/mydb);

Kann ich das einfach tun?

mongoose.connectSet('mongodb://10.10.10.1/mydb, mongodb://10.10.10.2/mydb');

Wie wäre es mit Express-Sitzungsmongo und Mongolisch? Wie richte ich die Verbindung zum Replikat -Set ein?

Warum muss ich alle Hostnamen definieren? Sollte der Fahrer nicht alle primären und sekundären wissen und die Nachschlagtabelle behalten, anstatt ihn beim Aufbau der Verbindung manuell zu definieren?

War es hilfreich?

Lösung

Der von Mongoose verwendete MongoDB -Treiber findet also alle Mitglieder des Replikats, wenn Sie mindestens ein Mitglied im ursprünglichen Satz haben. Dies ist an jedes Mitglied in einem Replikat zurückzuführen, das über alle anderen Mitglieder weiß. Je mehr Server Sie über das Bessere wissen, da es eher einen Server findet, falls Sie nur auf dem Server übergeben sind.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top