2012-01-21 3 views
5

Я использую собственный драйвер в PHP для подключения к базе данных mongo.mongodb и php: connection pooling

Я не понимаю понятие объединения пулов: это как «пул» соединений, и когда пользователь открывает веб-сайт, соединение вытягивается из этого пула и используется?

Но что делать, если у вас есть несколько страниц с кодом, который использует mongoDB? Будет ли система вытаскивать новое соединение из пула каждый раз, когда пользователь изменяет страницу?

В целом: как я могу управлять этим «пулом соединений» (или он управляется автоматически), когда есть много одновременных соединений?

ответ

5

Я не понимаю понятие объединения пулов: это как «пул» соединений, и когда пользователь открывает веб-сайт, соединение вытягивается из этого пула и используется?

Да, это именно то, что есть.

Но что делать, если у вас есть несколько страниц с кодом, который использует mongoDB? Будет ли система вытаскивать новое соединение из пула каждый раз, когда пользователь изменяет страницу?

Да. Соединение берется из пула, когда требуется (пользователь загружает страницу), а затем возвращается в пул, когда заканчивается скрипт. Он по-прежнему сохраняется (устанавливается с помощью настройки php.ini mongo.allow_persistent) и автоматически обрабатывается драйвером.

В целом: как я могу управлять этим «пулом соединений» (или он управляется автоматически), когда есть много одновременных соединений?

Пулы соединений в основном управляются автоматически. У вас есть некоторый уровень контроля с использованием класса MongoPool.

+0

большое спасибо. – yesterday