Вы не хотите открывать новое подключение к базе данных каждый раз, когда подключается новый пользователь. Я не знаю, сможете ли вы легко масштабировать до 20 000 пользователей одновременно, так как MongoDB использует новый поток для каждого нового соединения. Вы хотите, чтобы в бэкэнде вашего веб-приложения было открыто от одного до нескольких соединений с базой данных, и просто используйте их в пуле, особенно потому, что веб-использование очень асинхронно и зависит от событий.
см .: http://www.mongodb.org/display/DOCS/Connections
Сервер будет использовать один поток на TCP
связи, поэтому настоятельно рекомендуется, чтобы ваша заявка
использовать какой-то пул соединений. К счастью, большинство водителей справляются с этим
для вас за кадром. Одним заметным исключением являются настройки, где ваш
приложение порождает новый процесс для каждого запроса, такой как CGI и некоторые
конфигурации PHP.
Какой бы драйвер вы ни использовали, вам нужно выяснить, как они обрабатывают соединения и объединяются ли они в пул или нет. Например, Node's Mongoose не является блокирующим, поэтому вы обычно используете одно соединение для каждого приложения. Это то, что вы, вероятно, хотите.