Difference between revisions of "Test de la solution fichier texte"
(→Résultat) |
|||
Line 50: | Line 50: | ||
=Résultat= | =Résultat= | ||
Nombre d'opérations efféctuées par login15 : 3 | Nombre d'opérations efféctuées par login15 : 3 | ||
+ | |||
Le résultat est exact. | Le résultat est exact. | ||
*taille du fichier log : 2.4 Mo | *taille du fichier log : 2.4 Mo | ||
*temps de traitement de la requète : 0.4 s | *temps de traitement de la requète : 0.4 s |
Revision as of 14:43, 7 June 2006
Test
Un script a été utilisé pour créer un fichier de logs de 30000 entrées.
#!/bin/bash i=0 echo > logs.txt while [ $i -lt 10000 ] do echo "`date` login$i droits connexion" >> logs.txt echo "`date` login$i droits modification table1.champ1=valeur1 table2.champ2=valeur2" >> logs.txt echo "`date` login$i droits deconnexion" >> logs.txt i=$(($i+1)) done
Ensuite, un script PHP est utilisé pour faire une requète sur le fichier logs.txt créé et pour chronometrer le temps necessaire à l'obtention du résultat. La requète consiste à demander combien d'opérations ont été effectuées par la personne ayant l'identifiant 'login15'.
<?php $temps = microtime(); $temps = explode(' ', $temps); $debut = $temps[1] + $temps[0]; $n = 0; $file = "logs.txt"; if(!($fp = fopen($file, "r"))) { die("could not open text input"); } while($ligne = fscanf($fp, "%s %d %s %s %s %s %s %s %s %s\n", $jour, $num_jour, $mois, $annee, $heure, $fuseau, $login, $droits, $operqtion, $tables)) { if($login == 'login15') { $n++; } } echo 'Nombre d\'opérations effectuées par login15 : '.$n.'
'; $temps = microtime(); $temps = explode(' ', $temps); $fin = $temps[1] + $temps[0]; echo 'Page générée en '.round(($fin - $debut), 6).' secondes.'; ?>
Résultat
Nombre d'opérations efféctuées par login15 : 3
Le résultat est exact.
- taille du fichier log : 2.4 Mo
- temps de traitement de la requète : 0.4 s