curl langsam connect_time
Betrachten Sie diesen code in einer php-Datei auf meinem VPS server:
<?php $url = 'http://www.google.com';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1" );
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$content = curl_exec($ch);
$ci = curl_getinfo($ch);
curl_close($ch);
var_dump($ci); ?>
gibt diese
array(22) {
["url"]=> string(21) "http://www.google.com"
["content_type"]=> string(24) "text/html; charset=UTF-8"
["http_code"]=> int(200)
["header_size"]=> int(2055)
["request_size"]=> int(147)
["filetime"]=> int(-1)
["ssl_verify_result"]=> int(0)
["redirect_count"]=> int(0)
["total_time"]=> float(50.095466)
["namelookup_time"]=> float(0.001114)
["connect_time"]=> float(50.019724)
["pretransfer_time"]=> float(50.019825)
["size_upload"]=> float(0)
["size_download"]=> float(23156)
["speed_download"]=> float(462)
["speed_upload"]=> float(0)
["download_content_length"]=> float(-1)
["upload_content_length"]=> float(0)
["starttransfer_time"]=> float(50.070702)
["redirect_time"]=> float(0)
["certinfo"]=> array(0) { }
["redirect_url"]=> string(0)
"" }
Nach Tests an verschiedenen Zeiten des Tages, die "connect_time" ist konsequent auf die 50-Sekunden-Marke. Ich glaube, es sollte 10X schneller, wenn nicht im 1 Sekunden-Marke und darunter.
Ich bin nicht kenntnisreich mit der server-config, aber ich wurde gesagt, dass mein server CPU oder RAM Unrecht sein könnte. Früher habe ich den oberen Befehlszeile, um das folgende, das scheint in Ordnung zu mir:
Aufgaben: 80 total, 1 running, 79 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0% us, 0.0%sy, 0.0% ni,100.0% id, 0.0%wa, 0.0% hi, 0.0%si,
0.0% stMem: 2097152k insgesamt, 1273128k verwendet, 824024k free, 0k
PufferSwap: 0k total, 0k used, 0k free, 0k
Cache
Frage ich mich, was könnte die Ursache für dieses Problem ?
EDIT: ZUSÄTZLICHE INFORMATIONEN
ping www.google.com Ergebnis. Es kam wie es gehen könnte foreover so hörte ich den Befehl nach dem 195th Linie
PING www.l.google.com (74.125.224.178) 56(84) bytes of data.
64 bytes from lax02s01-in-f18.1e100.net (74.125.224.178): icmp_seq=1
ttl=56 time=12.0 ms64 bytes from lax02s01-in-f18.1e100.net (74.125.224.178): icmp_seq=2
ttl=56 time=12.1 ms64 bytes from lax02s01-in-f18.1e100.net (74.125.224.178): icmp_seq=3
ttl=56 time=11.9 ms...
64 bytes from lax02s01-in-f18.1e100.net (74.125.224.178): icmp_seq=194
ttl=56 time=11.9 ms64 bytes from lax02s01-in-f18.1e100.net (74.125.224.178): icmp_seq=195
ttl=56 time=11.9 ms--- www.l.google.com ping-Statistik --- 195 packets transmitted, 194 received, 0% packet loss, time 194711ms
traceroute wwww.google.com Ergebnis
traceroute to www.google.com (74.125.224.180), 30 hops max, 60 byte
Pakete1 ip---*-.ip.secureserver.net (.*..) 0.585 ms
0.642 ms 0.778 ms2 be10.trmd0215-01.ars.mgmt.phx3.gdg (208.109.112.126) 0.599 ms
0.777 ms 0.893 ms3 ip-97-74-253-122.ip.secureserver.net (97.74.253.122) 11.840 ms
12.119 ms 12.275 ms4 ip-97-74-253-122.ip.secureserver.net (97.74.253.122) 12.389 ms
12.482 ms 12.600 ms5 PR01.LAX03.google.com (206.223.123.21) 11.739 ms ms 11.709
11.707 ms6 209.85.248.185 (209.85.248.185) 11.986 ms 11.797 ms 11.781 ms
7 72.14.236.11 (72.14.236.11) 12.606 ms 12.363 ms 12.328 ms
8 lax02s01-in-f20.1e100.net (74.125.224.180) 11.774 ms ms 11.864
11.842 ms
- Welche Art von Netzwerkverbindung Sie haben, was Ressourcen auf dem vserver host Aussehen? Ausführung der oben genannten arbeiten innerhalb von 1-3 Sekunden bei mir auf mehreren Plattformen. Es ist etwas, das lokal auf Ihrem setup. Können Sie ping/traceroute zu google und aktualisieren Sie Ihre Frage? Dies dürfte wohl in serverfault.
- danke sixeightzero, ich fügte hinzu, dass Informationen zu meiner Frage
- geändert, mein resolver-Konfiguration (resolv.config), um die Google-nameserver-ip. Hat nicht geholfen
- > curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 ); dies funktioniert der trick Erstens ich verengt das problem auf cURL jobs abrufen der url google.com. Andere URLs waren in Ordnung, LOCKE durchgeführt, auch bei der Verwendung G die ip-Adresse als url. Es scheint, dass google hat IPv6 aktiviert, aber der traffic nicht route richtig/überhaupt und vielleicht LOCKE mal aus. Vielen Dank an alle, die geholfen haben.
- schönen Fang! Dies ist eine große Frage und Auflösung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen:
Oben wird verhindern, dass LOCKE von dem Versuch IPv6-ersten.
Eben lief ich die gleiche Konfiguration, die Sie gab, und bekam die folgende:
Meine Vermutung ist, dass Ihre server-Verbindung selbst sein könnte mit der Bandbreite Probleme und/oder besteuert wird irgendwie von einem anderen Prozess.