Frage

Ich habe einen neuen VPS-Server, und ich versuche, es auf einem anderen Server auf dem gleichen ISP zu verbinden zu bekommen. Wenn ich über die MySQL-Kommandozeilen-Tool zu verbinden, ist die Verbindung sehr schnell.

Wenn ich PHP verwenden, um die Remote-DB zu verbinden, kann die Verbindung zu 5 Sekunden dauern. Abfragen nach diesem ausgeführt schnell.

Dies ist nicht auf MySQL beschränkt, file_get_contents () unter Verwendung von zum Herunterladen einer Datei nahezu jedem anderen Server die gleiche Verzögerung gibt. Mit wget um die Datei erhalten nicht diese Verzögerung hat.

I timed DNS-Abfragen aus PHP dns_get_record () verwenden, und diese sind schnell (1-2 Millisekunden).

Alle Gedanken auf, was in der PHP-Konfiguration dieses verursachen können?

Danke.

War es hilfreich?

Lösung 2

beenden ich von PHP 5.1.6 Upgrade auf 5.2.6 PHP, und das Problem ging weg. Es war definitiv eine DNS-Lookup-Ausgabe in PHP, die folgenden würde etwa 5 Sekunden dauern auszuführen:

gethostbyname('example.com')

Ich habe das Gefühl, IPV6 ist ein Problem (meist eine Ahnung von der Lektüre dieses online), aber ich habe keinen Beweis.

Andere Tipps

Ich würde überprüfen, um zu sehen, welcher Modus PHP in ausgeführt wird, ist es aus irgendeinem Grund die Skripte als CGI ausgeführt wird. Im Grunde genommen ist PHP selbst sehr langsam, und es ist nur bemerkbar, wenn die Remote-Betrieb ausgeführt wird.

Überprüfen Sie die Konfiguration des Web-Servers. Auch wenn es eine Option ist, versuchen Sie PHP von der Kommandozeile und sehen, ob es besser abschneidet, ohne die Web-Server-Schicht beteiligt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top