carefree
Goto Top

Problem mit PHP-Ausführungszeit

Hallo zusammen,

in einem Netzwerk befindet sich folgender Server:

- Linux 2.6 (openSUSE 10.3),
- Apache 2.2.4,
- PHP 5.2.5,

sowie mehrere Clients.


Folgendes PHP-Script wird ausgeführt:
<?php
$time_start = getmicrotime();
print "Hallo Welt<br>";  
for($i=0;$i<100000;$i++){
 print ".";  
}
$time_end = getmicrotime();
$time = round($time_end - $time_start,4);
echo "Seite in ".$time." Sekunden generiert";  

function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());  
return ((float)$usec + (float)$sec);
}
?>
Das Script wird mehrmals direkt auf dem Server und einem Client ausgeührt.
Die Ergebnisse sind in Ordnung für den Server, aber erschütternd für den Client!


DURCHSCHNITTLICHE ERGEBNISSE BEI 5 AUSFÜHRUNGEN:

1. Server-Ausführung: 0,03284 Sekunden
2. Client-Ausführung: 0,33632 Sekunden

Warum ist PHP auf dem Client nur so verdammt langsam???

Die Ausführungszeit ist 10mal länger als die des Servers.

Das Script wurde vom Client direkt mit der IP-Adresse des Servers aufgerufen.


Bitte um mögliche Theorien, besser noch Lösungsvoschläge!!!!!


Gruß
Carefree

Content-Key: 79570

Url: https://administrator.de/contentid/79570

Printed on: April 25, 2024 at 20:04 o'clock

Member: masterG
masterG Jan 30, 2008 at 16:28:09 (UTC)
Goto Top
Hi! Bitte nach PHP verschieben!
Member: Carefree
Carefree Jan 30, 2008 at 16:33:51 (UTC)
Goto Top
Schon geschehen. Danke!

Dachte, es könnte ein Server-Problem sein!
Member: Masterofdisaster2
Masterofdisaster2 Jan 30, 2008 at 17:57:27 (UTC)
Goto Top
Hast du denn schon mal dran gedacht, dass eventuell die Übertragung übers Netz was damit zu tun hat?
Member: Carefree
Carefree Jan 31, 2008 at 08:25:47 (UTC)
Goto Top
Daran habe ich natürlich auch schon gedacht, jedoch beginnt die Messung erst dann, wenn das Script übertragen wurde, nicht wenn es abgerufen wird.

Ein ähnlich konfigurierter Server im gleichen Netzwerk führt das Script ebenfalls deutlich schneller aus.
Member: Masterofdisaster2
Masterofdisaster2 Jan 31, 2008 at 11:53:13 (UTC)
Goto Top
Hast du denn die Möglichkeit das noch mit anderen Clients zu testen?
Member: Carefree
Carefree Jan 31, 2008 at 16:18:16 (UTC)
Goto Top
Habe mit mehreren Clients getestet.
Die Ergebnisse sind alle ähnlich schlecht!
Mitglied: 61534
61534 Feb 17, 2008 at 20:23:03 (UTC)
Goto Top
Bei mir war's ein Serverproblem face-wink Die Symptome waren jedenfalls genau die selben.

Der Prozessor wurde von cpufreq heruntergeregelt:

lsmod | grep cpufreq
cpufreq_ondemand 9484 0

Ein
echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
behob das Problem.

Vorher war der scaling governor auf
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
ondemand

gesetzt.

HTH Christoph