phpbar.de logo

Mailinglisten-Archive

AW: [php] Performancetest

AW: [php] Performancetest

Tim Hildebrandt TConnect at gmx.net
Don Sep 23 14:44:21 CEST 2004


Hallo Hans-Jürgen,

> Frage:
> Gibt es Referenztests auf php-Basis, mit denen
> man die Performance für
> 	- dir php-engine
> 	- die mysql-db
> getrennt checken kann ? So eine Art Benchmark ?

Ob es dazu schon was fertiges gibt, weiß ich gerade nicht. Es ist aber
eigentlich kein Problem, ganz am Anfang Deines Scriptes eine Variabel zu
setzen, die eine Zeitvariabel initialisiert (am besten mittels eines
Funktionsaufrufes:

<?php
function getmicrotime(){
    $time_array = explode(" ",microtime());
    return $time_array[0] + $time_array[1];
    }
$messzeit = getmicrotime();
[...]
?>

Später im Script kann man dann über die folgende Zeile:

<?php
echo "<!-- Schritt1: " . number_format(round((getmicrotime()-$messzeit), 5),
5, ",", "") . " -->\n";
?>

...die Differenz zum Startwert errechnen lassen, was ganz nützlich ist. Wenn
Du diese Zeile mehrfach an unterschiedlichen Stellen im Script verwendest,
dann solltest Du statt "Schritt1" vielleicht einen Kommentar darüber
verfassen, an welcher Stelle des Scriptes Du die Differenz hast ermitteln
lassen.

In der Regel bekommt man dann recht schnell raus, wo genau die Zeitfresser
stecken (z.B. bei der Platzierung direkt hinter einer SQL-Query etc.).

Die Ergebnisse sind aufgrund der HTML-Kommentare nicht im Layout auf der
Homepage sichtbar. Man muß sich dann schon den HTML-Quelltext anschauen...
Da steht's dann zwischendrin...


> Da ich noch nicht so lange im php-Land unterwegs bin,
> bin ich hier für jeden Tip dankbar.
> 

Dafür gibt's ja die Liste... ;-)))


Grüße Tim


php::bar PHP Wiki   -   Listenarchive