В моей программе PHP мне нужно ударить базу данных от 0 до 3 раз по любому запросу веб-страницы. Я использую PDO для взаимодействия с MySQL. Сначала я создаю соединение с базой данных, используя что-то вроде этого:
$dbh = new PDO("mysql:host=$hostname;dbname=animals", $username, $password);
Затем я делаю то, что мне нужно, и закрываю соединение следующим образом:
$dbh = null;
Я открываю и закрываю соединение 0-3 раза прямо сейчас, столько же раз, сколько мне нужно для взаимодействия с MySQL.
Мой вопрос заключается в том, следует ли вместо этого использовать повторное использование этого соединения? Мои запросы не одно за другим, они разбросаны по всей моей программе, и я не думаю, что было бы легко запустить их один за другим.
Так лучше ли создавать новое соединение с базой данных и закрывать его для каждого взаимодействия (запроса) или просто оставлять соединение открытым и повторно использовать его? Разве это имеет значение?
Благодаря!
Для типичной страницы веб-сайта вы должны повторно использовать одно и то же соединение для всех запросов.
Не стоит тратить время на разъединение и повторное подключение.
Если ваши страницы не занимают огромное количество времени (огромное относительное), тогда нет смысла отказываться от соединения. Вы закончите тратить больше циклов на connectiong / disconnecting, чем на самом деле выполняете запросы. MySQL довольно легкий, насколько это возможно, но он все еще добавляет.