2017-12-25 1 views
0

Ich erhöhte MaxPoolSize Wert auf 3000. Bedeutet das, dass 3000 gleichzeitige Verbindungen erlaubt sind, die diese Instanz verwenden, oder zählt es auch andere Verbindungen durch andere Objektinstanzen?MongoDB, gilt MaxPoolSize-Limit für alle Client-Instanzen?

var connectionString = "mongodb://username:[email protected]:27017/MyDB?maxPoolSize=3000" 
var client = new MongoClient(connectionString); 
return client.GetDatabase(databaseName); 

Antwort

0

Nun, es ist nicht genau wie du gesagt hast. Diese article bietet eine kurze explaination wie Verbindungspooling funktioniert, ist, und es heißt im Grunde, dass:

meist MongoDB-Treiber einen Parameter unterstützen, die die maximale Anzahl der Verbindungen (Poolgröße) zur Verfügung zu Ihrer Anwendung setzt. Die Verbindung Poolgröße kann als die maximale Anzahl gleichzeitiger Anfragen , die Ihr Treiber bedienen kann, gedacht werden. Die Standard-Poolgröße variiert von Treiber zu Treiber, z. für Node ist es 5, während es für Python 100 ist. Wenn Sie erwarten, dass Ihre Anwendung viele gleichzeitige oder lang andauernde Anfragen erhält, empfehlen wir, Ihre Poolgröße zu erhöhen - passen Sie entsprechend an!

Die gesamte eingehende Verbindungsgrenze auf dem Server durch die kleinere der Grenzen, die durch das Betriebssystem oder maxIncomingConnections (oder maxConns in MongoDB 2.4 und früher) auferlegt wird bestimmt.

die Differenz zwischen den beiden Einstellungen Eigentlich ist wie folgt:

  • Connection Pooling = Grenze der Verbindungen pro Client
  • Anschlüsse Limit = Gesamt erlaubt Client-Verbindungen
+0

Dank . Ich sehe den Standard 'maxIncomingConnections' ist' 65536' auf dem Server. Aber auf der Client-Seite ist es für mich nicht klar. zum Beispiel in meinem Code oben, wenn ich ein MongoClient-Objekt namens "Client" mit 3000 Max Pool erstellen, und dann ein anderes Objekt namens "client2" mit der gleichen Verbindungszeichenfolge erstellen, habe ich 6000 Verbindungen? – Blendester

+0

Nein, das bedeutet, dass Ihr Server jedem Client nicht mehr als 3000 gleichzeitige Anfragen gewährt. Und wenn Sie beide Clients damit verbinden, haben Sie 2 von 65536 Verbindungen zugewiesen. –

Verwandte Themen