2012-01-21 16 views
5

Używam natywnego sterownika w PHP do połączenia z bazą danych Mongo.mongodb i php: buforowanie połączeń

Nie rozumiem pojęcia łączenia połączeń: czy jest to "pula" połączeń, a kiedy użytkownik otwiera witrynę, połączenie jest pobierane z tej puli i wykorzystywane?

Ale co, jeśli masz wiele stron z jakimś kodem, który używa mongoDB? Czy system będzie pobierał nowe połączenie z puli za każdym razem, gdy użytkownik zmieni stronę?

Ogólnie: jak zarządzać tą "pulą połączeń" (lub czy jest ona zarządzana automatycznie), gdy istnieje wiele równoczesnych połączeń?

Odpowiedz

5

Nie rozumiem pojęcia łączenia połączeń: czy jest to "pula" połączeń, a kiedy użytkownik otwiera witrynę, połączenie jest pobierane z tej puli i wykorzystywane?

Tak, dokładnie tak jest.

Ale co, jeśli masz wiele stron z pewnym kodem, który używa mongoDB? Czy system będzie pobierał nowe połączenie z puli za każdym razem, gdy użytkownik zmieni stronę?

Tak. Połączenie jest pobierane z puli, gdy jest to wymagane (użytkownik wczytuje stronę), a następnie powraca do puli po zakończeniu działania skryptu. Jest domyślnie trwały (ustawiony za pomocą ustawienia php.ini) i automatycznie obsługiwany przez sterownik.

Ogólnie: jak zarządzać tą "pulą połączeń" (lub czy jest ona zarządzana automatycznie), gdy istnieje wiele równoczesnych połączeń?

Pule połączeń są w większości zarządzane automatycznie. Masz pewien poziom kontroli przy użyciu klasy MongoPool.

+0

dziękuję bardzo. – yesterday