2010-10-23 16 views
1

J'utilise la classe Profiler du Kohana3 et son modèle de profileur/stats pour chronométrer mon site web. Dans une page très propre (pas AJAX, pas jQuery etc, seulement charger un modèle et afficher un message texte, pas d'accès à la base de données), le temps de requête est 0.070682 s (item "Demandes" dans le template "profiler/stats") . Ensuite, j'utilise deux microtime() pour chronométrer la durée depuis la première ligne de l'index.php jusqu'à la dernière ligne de index.php, cela montre un résultat presque très rapide. (0.12622809410095 s). Très beau résultat. Mais si je calcule l'heure de la demande du point de vue du navigateur, c'est totalement différent. J'utilise Firefox + Temper data add-on, il montre que la durée de la requête est de 3.345sec! Et j'ai remarqué qu'à partir du moment où je clique sur le lien pour entrer dans le site (firefox démarre l'icône de chargement animée), quand le navigateur termine son travail (l'animation de l'icône s'arrête), ça prend vraiment 3-4 secondes !! Dans mon autre site Web qui est construit avec WikkaWiki, le temps mesuré par Temper Data est seulement 2190ms - 2432ms, y compris plusieurs accès à la base de données mysql.Kohana temps d'exécution est rapide, mais le temps de réponse global est lent, pourquoi?

J'ai essayé une nouvelle installation de kohana, et la page par défaut plaine hello-world charge également 3025ms.

Tous les sites que j'ai mentionnés ici sont testés dans le même PC "localhost", même réglage. En fait, ils sont simplement hébergés dans des répertoires différents dans la même machine. Seul le module Base de données est activé dans le fichier bootstrap.php pour le site Web kohana.

Je me demande pourquoi la réponse globale du site kohana est si lente alors que le temps d'exécution du code php est seulement de 0,126 seconde ?? Y a-t-il quelque chose que je devrais examiner?

== Modifier pour plus d'informations ==

Résultat du test à la page phpinfo() standard est 1100-1200ms (données Temper)

+0

OS/webserver/toute autre information pertinente? – SimonJ

+0

Simon, le système d'exploitation est WinXP SP3 + Apache 2.2.14 + PHP5.3.2, MySQL 5.0.41 – LazNiko

+0

Enfin, j'ai désactivé le XDebug dans PHP.ini puis la durée mesurée dans Temper données deviennent 1356ms. – LazNiko

Répondre

0

Depuis votre poste confirme Kohana termine dans un 1/10ème d'une seconde et moins, c'est probablement autre chose:

  1. Avez-vous testé autre chose que Kohana? Il semble que le serveur est en faute, mais vous ne pouvez pas en être sûr à moins de comparer les temps de réponse avec autre chose. Essayez une page HTML et pure PHP.
  2. Le profileur firefox prend en compte les médias externes. Donc, si vous avez une connexion lente et que vous chargez Google Analytics, cela pourrait être un autre problème.
+0

J'ai testé la page WikkaWiki et la page standard phpinfo(), le résultat est 2190-2432ms, et 1100-1200ms respectivement.Aucune ressource externe chargée dans mon site Web kohana à l'exception de quelques images de taille totale de 40 Ko et de CSS, toutes sont stockées dans l'hôte local. – LazNiko

+0

Étrange, je suggère d'installer xdebug et de le profiler pour voir où il stagne. –

1

Le profileur vous montre le temps d'exécution de l'initialisation de Kohana à l'appel de rendu Profiler. Donc, ce n'est pas un temps complet Kohana. Certains types d'actions (Kohana::shutdown_handler(), Session::_destroy() etc.) peuvent prendre beaucoup de temps.