mongodb & max подключений - PullRequest
       10

mongodb & max подключений

21 голосов
/ 09 декабря 2011

У меня будет веб-сайт с 20k + одновременных пользователей.

Я собираюсь использовать mongodb, используя один узел управления и 3 или более узлов для разделения данных.

Теперь моя проблема - максимальное количество подключений. если у меня так много пользователей, обращающихся к базе данных, как я могу убедиться, что они не достигают максимального предела? также я должен изменить что-нибудь, возможно, в ядре, чтобы увеличить соединения?

В основном база данных будет использоваться для удержания подключенных пользователей к сайту, поэтому будут большие операции чтения / записи.

Заранее спасибо.

1 Ответ

23 голосов
/ 09 декабря 2011

Вы не хотите открывать новое подключение к базе данных каждый раз, когда подключается новый пользователь. Я не знаю, сможете ли вы легко масштабировать до 20 000 пользователей одновременно, так как MongoDB использует новый поток для каждого нового соединения. Вы хотите, чтобы в бэкэнде вашего веб-приложения было открыто от одного до нескольких соединений с базой данных, и просто используйте их в пуле, особенно потому, что веб-использование очень асинхронно и зависит от событий.

см .: http://www.mongodb.org/display/DOCS/Connections

Сервер будет использовать один поток на TCP связи, поэтому настоятельно рекомендуется, чтобы ваша заявка использовать какой-то пул соединений. К счастью, большинство водителей справляются с этим для вас за кадром. Одним заметным исключением являются настройки, где ваш приложение порождает новый процесс для каждого запроса, такой как CGI и некоторые конфигурации PHP.

Какой бы драйвер вы ни использовали, вам нужно выяснить, как они обрабатывают соединения и объединяются ли они в пул или нет. Например, Node's Mongoose не является блокирующим, поэтому вы обычно используете одно соединение для каждого приложения. Это то, что вы, вероятно, хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...