Heim  >  Artikel  >  Backend-Entwicklung  >  So stellen Sie eine dauerhafte Verbindung zwischen PHP und der MySQL-Datenbank her

So stellen Sie eine dauerhafte Verbindung zwischen PHP und der MySQL-Datenbank her

little bottle
little bottlenach vorne
2019-04-23 16:08:213625Durchsuche

In diesem Artikel geht es um die Einführung der spezifischen Schritte einer dauerhaften Verbindung zwischen PHP und der MySQL-Datenbank. Ich hoffe, dass er für Sie hilfreich ist.

Persistente Datenbankverbindung:

1. Eine persistente Datenbankverbindung bezieht sich auf eine Verbindung, die nicht geschlossen wird, wenn die Ausführung des Skripts endet. Wenn eine dauerhafte Verbindungsanforderung empfangen wird. PHP prüft, ob bereits eine identische dauerhafte Verbindung besteht (die zuvor geöffnet wurde). Wenn sie vorhanden ist, wird die Verbindung direkt verwendet. Wenn sie nicht vorhanden ist, wird eine neue Verbindung hergestellt. Die sogenannte „gleiche“ Verbindung bezieht sich auf eine Verbindung zum selben Host unter Verwendung desselben Benutzernamens und Passworts.

Verwandte Tutorials: MySQL-Video-Tutorial

2. Die erste Methode besteht darin, PHP als separat laufenden Sprachinterpreter (CGI Wapper) zu verwenden. In diesem Fall gibt es keinen Unterschied zwischen der Verwendung einer dauerhaften und einer nicht dauerhaften Verbindung, da die Ausführung des PHP-Skripts selbst nicht dauerhaft ist.

3. Verwenden Sie PHP als Modul eines Multiprozess-Webservers. Diese Methode ist derzeit nur auf Apache anwendbar, wenn derselbe Client zum zweiten Mal eine Anfrage stellt ein anderer Unterprozess, der behandelt werden muss. Nach dem Öffnen einer dauerhaften Verbindung können alle nachfolgenden Seiten, die den SQL-Dienst anfordern, die hergestellte SQL Server-Verbindung wiederverwenden.

4. Wenn das Skript bei Verwendung einer Datentabellensperre in einer dauerhaften Verbindung die Datentabellensperre aus irgendeinem Grund nicht aufheben kann, werden nachfolgende Skripte, die dieselbe Verbindung verwenden, dauerhaft blockiert, sodass der httpd-Dienst neu gestartet werden muss . Oder Datenbankdienst.

5. Wenn das Skript endet, bevor die Transaktion blockiert wird, wirkt sich die Blockierung auch auf das nächste Skript aus, das dieselbe Verbindung verwendet.

6 ::ATTR_PERSISTENT) um auf die Datenbank zuzugreifen, entspricht ein PHP-FPM-Worker-Prozess einer langen Verbindung zu MySQL

Nachdem die Anfrage abgeschlossen ist, gibt PHP die Verbindung zu MySQL beim nächsten Mal nicht frei ist für das Programm sehr wichtig.

Dies kann als der von PHP-FPM verwaltete „Datenbankverbindungspool“ angesehen werden.

7. aber es erhöht die Belastung der Datenbank.

Persistente PDO-Verbindung:

$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
    PDO::ATTR_PERSISTENT => true
));

Beweis:

Verwandte Tutorials: PHP Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo stellen Sie eine dauerhafte Verbindung zwischen PHP und der MySQL-Datenbank her. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen