10 Stimmen

Wie funktioniert die Datenbankverbindung in php-mysql

Ist es besser, die Verbindung zu schließen, nachdem jede Abfrage ausgeführt wird, oder setzen Sie die Verbindung, wie es ist, dann wird php automatisch schließen, dass die Verbindung.

Welche ist besser und warum?

7voto

Gumbo Punkte 617646

Öffnen Sie die Verbindung nur einmal. Auch das Öffnen und Schließen einer Verbindung kostet Zeit. Und wie Sie schon sagten, PHP schließt offene Verbindungen am Ende der Laufzeit automatisch .

Rufen Sie also einfach an mysql_connect wann immer Sie eine Verbindung benötigen, und lassen Sie PHP diese am Ende schließen. mysql_connect prüft auf bereits bestehende Verbindungen, so dass Sie sich keine Sorgen machen müssen, dass der Aufruf von mysql_connect mit denselben Parametern wird jedes Mal eine neue Verbindung geöffnet. Sie können auch verwenden dauerhafte Verbindungen die für mehr als nur eine Skriptausführung verwendet werden können.

5voto

zanbaldwin Punkte 999

Das spielt eigentlich keine Rolle. Wenn Ihr PHP-Skript die Verbindung am Ende des Skripts für Sie schließt, ist es nicht wirklich sinnvoll, dies selbst zu tun.

Der einzige Grund, warum Sie diesen zusätzlichen Code in das Skript einfügen sollten, um die Verbindung zu schließen, nachdem Sie alle Ihre Abfragen durchgeführt haben, ist, wenn Sie ein wenig Speicher freigeben möchten, z. B. wenn Ihr Skript bereits speicherhungrig ist und Bibliotheken wie GD2 verwendet.

Das Schließen der Verbindung nach jeder Abfrage und das Öffnen einer anderen für eine weitere Abfrage ist speicherhungrig und eine enorme Zeitverschwendung. Alles in allem, nicht wirklich stören!

2voto

Sadat Punkte 3403

Lassen Sie die Verbindung offen, wenn Ihr Skript die Verbindung zufällig verwendet. Wenn es eine Gruppe von Aufträgen gibt, die die Verbindung mit einem gewissen zeitlichen Abstand nutzen, können Sie die Verbindung nach jedem Gruppenauftrag schließen.

1voto

martin.malek Punkte 2097

Meiner Erfahrung nach ist es besser, die Verbindung geöffnet zu lassen. Dies hängt jedoch vom Verhalten Ihrer Anwendung ab. Wenn Sie eine große Anzahl von Berechnungen durchführen oder eine Verbindung zu externen Diensten herstellen, die einige Zeit in Anspruch nehmen kann, dann ist es besser, die Verbindung zu schließen und sie wieder zu öffnen, nachdem Sie den zeitaufwändigen Teil beendet haben. Wenn Sie keine große Anzahl von Besuchern haben, bei denen Sie das Limit der Anzahl von SQL-Verbindungen erreichen können, dann lassen Sie die Verbindung die ganze Zeit geöffnet. Es dauert einige Zeit, sie wieder zu öffnen.

0voto

Sean A.O. Harney Punkte 22965

Es kann besser sein, eine dauerhafte Verbindung oder einen Pool von Verbindungen zu verwenden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X