Optimisation
Dernière modification : -
// 2007/07/30 17:01 / 90.1.187.152
→ ajouter une fonction et ses appels à des endroits stratégiques
→ on obtient le résultat dans le fichier perfs.log :
Voici un petit script pour collecter les données en affichage :
Il faut bien sur remplacer la variable url par la page à tester.
Profiler le code
→ ajouter une fonction et ses appels à des endroits stratégiques
function profile ($txt,$dump=FALSE)
{
static $times;
if ($dump)
{
if (!file_exists("perfs.log"))
{
$f = fopen("perfs.log","w");
for ($i=1;$i<sizeof($times);$i++)
fwrite($f,sprintf("%s:",$times[$i][0])); // header
fwrite($f,"\n");
}
else
$f = fopen("perfs.log","a");
for ($i=1;$i<sizeof($times);$i++)
fwrite($f,sprintf("%f:",$times[$i][1]-$times[$i-1][1])); // valeurs
fwrite($f,"\n");
fclose($f);
}
else
{
list($usec, $sec) = explode(" ", microtime());
$times[] = array($txt,((float)$usec + (float)$sec));
}
}
→ on obtient le résultat dans le fichier perfs.log :
Traitement:Formatage:
0.027288:0.407159:
0.027298:0.453744:
0.032468:0.444973:
0.025138:0.446650:
Obtenir les perfs
Voici un petit script pour collecter les données en affichage :
#!/bin/bash
url="http://fc/tw/221/wiki/?page=TestSpeed"
i=0
nb=20
while [ "$i" -lt "$nb" ]
do
echo "$i"
wget -q -O /dev/null "$url"
i=`expr $i + 1`
done
wget -q -O - ${url%\?*}perfs.log
Il faut bien sur remplacer la variable url par la page à tester.
Axes d'améliorations
- remplacer preg_replace par str_replace la ou on peut