Sie möchten nicht jedes Mal eine neue Datenbankverbindung öffnen, wenn ein neuer Benutzer eine Verbindung herstellt. Ich weiß nicht, ob Sie problemlos auf über 20.000 gleichzeitige Benutzer skalieren können, da MongoDB für jede neue Verbindung einen neuen Thread verwendet. Sie möchten, dass Ihr Webanwendungs-Backend nur eine bis wenige Datenbankverbindungen offen hat und diese nur in einem Pool verwendet, insbesondere da die Webnutzung sehr asynchron und ereignisgesteuert ist.
siehe:http://www.mongodb.org/display/DOCS/Connections
Welchen Treiber Sie auch verwenden, Sie müssen herausfinden, wie sie mit Verbindungen umgehen und ob sie sich zusammenschließen oder nicht. Zum Beispiel ist Mongoose von Node nicht blockierend, sodass Sie normalerweise eine Verbindung pro App verwenden. Das ist genau das, was Sie wahrscheinlich wollen.