2010-08-22 13 views
0

C'est une question commune, mais j'aimerais entendre des opinions d'experts.Comment faire le suivi des statistiques de projet (pages incluses, sql dumps, mémoire) en PHP?

Je commence un nouveau projet PHP que je voudrais garder à l'œil. Ce que je veux suivre est:

  • fichiers inclus - cadres qui utilisent des fichiers index.php et bootstrap et charge plusieurs fichiers à la page charge
  • sql dumps - celui-ci est plus facile parce que la plupart des cadres ont l'exploitation forestière DB (ainsi que des cadres ORM et ainsi de suite)
  • temps de chargement
  • suivi mémoire - statistiques de la mémoire pour les différentes zones du projet
  • tests crash - demande au maximum par seconde pour une page donnée

Il existe probablement des fonctions d'analyse comparative et de débogage qui pourraient être utilisées à certaines fins. Quelles sont les meilleures pratiques pour ces paramètres?

Répondre

0

un outil de référence bon et couramment utilisé est le siège. installez-le en utilisant votre gestionnaire de paquets (comme apt-get install siege) et utilisez-le comme ceci: siège -b -c 40 http://yoursite.com -b est l'analyse comparative (pas de délais), -c est des threads concurrents.

Je pense que par le temps de charge, vous voulez dire l'heure de génération de la page. bien le siège le montre aussi mais vous pouvez simplement utiliser microtime (true) au début et à la fin de votre fichier bootstrap et calculer la différence. Pour le débogage et les statistiques, vous pouvez utiliser DBG ou xdebug, tous deux de très bons outils. Les fichiers peuvent être mesurés en utilisant iostat ou fifo. Mais la meilleure chose serait de mettre des fonctions de mesure dans les fonctions d'encapsulation qui gèrent les tâches. la plupart des cadres ont des points centraux pour accrocher profileurs dans.

last but not least vérifier la fonction php memory_get_usage

+0

Ceci est une bonne réponse qui couvre la plupart des outils populaires. Cependant, je travaille avec différents frameworks et systèmes et j'essaie de ne pas pirater quelque chose dans les phases avant et après et de chercher quelque chose de plus automatisé ou à un niveau inférieur. La plupart des frameworks ont cependant des fonctions similaires dans les classes auxiliaires. –

+0

maby vous voulez jeter un oeil à debug php avancée ici http://www.php.net/manual/fr/book.apd.php –