PHP и PDO: одно соединение против более чем одного - PullRequest
2 голосов
/ 27 февраля 2011

В моей PHP-программе мне нужно обращаться к базе данных от 0 до 3 раз по любому запросу веб-страницы. Я использую PDO для взаимодействия с MySQL. Сначала я создаю соединение с базой данных, используя что-то вроде этого:

$dbh = new PDO("mysql:host=$hostname;dbname=animals", $username, $password);

Затем я делаю то, что мне нужно, и закрываю соединение следующим образом:

$dbh = null;

Прямо сейчас я открываю и закрываю соединение 0-3 раза, столько же раз мне нужно для взаимодействия с MySQL.

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

Так лучше ли создавать новое соединение с базой данных и закрывать его для каждого взаимодействия (запроса) или просто оставить соединение открытым и повторно использовать его? Имеет ли это какое-то значение?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 27 февраля 2011

Для типичной страницы веб-сайта вы должны повторно использовать одно и то же соединение для всех запросов.

Не стоит тратить время на отключение и повторное подключение.

0 голосов
/ 27 февраля 2011

Если вашим страницам не требуется много времени для запуска (огромное относительное отношение), то нет смысла отказываться от соединения.Вы в конечном итоге тратите больше времени на соединение / разъединение, чем на самом деле выполняете запросы.MySQL довольно легковесен в плане соединений, но все равно складывается.

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