Maison > développement back-end > PHP7 > le corps du texte

Comment installer et utiliser l'outil d'analyse des performances xhprof sous PHP7

醉折花枝作酒筹
Libérer: 2023-02-17 22:48:02
avant
2389 Les gens l'ont consulté

Cet article vous présentera comment installer et utiliser l'outil d'analyse des performances xhprof sous PHP7. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Comment installer et utiliser l'outil d'analyse des performances xhprof sous PHP7

La version xhprof est obtenue à partir de https://github.com/longxinH/xhprof

git clone https://github.com/longxinH/xhprof
Copier après la connexion

Installez xhprof

cd xhprof/extension/
phpize
./configure 
make
make install
Copier après la connexion

puis Ajoutez

extension=xhprof.so
Copier après la connexion

à /etc/php.ini selon la situation et exécutez

php -m | grep xhprof
Copier après la connexion

pour voir le résultat, indiquant que l'extension php est installée avec succès, puis redémarrez Apache ou php-fpm

exécuter

Vous pouvez exécuter directement l'exemple dans le répertoire d'exemple dans le fichier cloné depuis github

Le résultat est le suivant

Array
(
    [main()] => Array
        (
            [ct] => 1
            [wt] => 9
        )

)
---------------
Assuming you have set up the http based UI for 
XHProf at some address, you can view run at 
http://<xhprof-ui-address>/index.php?run=592567308784c&source=xhprof_foo
---------------
Copier après la connexion

Ensuite, copiez le ? run=592567308784c&source=xhprof_foo après index.php

Visitez

xhprof_html/index.php?run=592567308784c&source=xhprof_foo
Copier après la connexion

pour voir le résultat

Comment installer et utiliser loutil danalyse des performances xhprof sous PHP7

Cliquez sur Afficher le graphique de calligraphie complet au milieu pour voir l'image de l'analyse des performances

Signaler les erreurs

failed to execute cmd:" dot -Tpng". stderr:sh: dot:command not found。
Copier après la connexion
rrree

Adaptez-vous en conséquence

Par exemple, si vous souhaitez tester votre propre projet, comme l'analyse des performances d'un framework.

Copiez les deux fichiers

xhprof_lib.php et xhprof_runs.php dans le même répertoire que le fichier d'entrée, puis ajoutez

//解决方案
yum install graphviz
Copier après la connexion
<🎜 au début du fichier d'entrée >Ajouter

// start profiling
xhprof_enable();
Copier après la connexion

jusqu'à la position finale pour obtenir l'URL indiquée ci-dessus, puis visitez à nouveau

// stop profiler
$xhprof_data = xhprof_disable();

// display raw xhprof data for the profiler run
print_r($xhprof_data);


include_once "xhprof_lib.php";
include_once "xhprof_runs.php";

// save raw data for this profiler run using default
// implementation of iXHProfRuns.
$xhprof_runs = new XHProfRuns_Default();

// save the run under a namespace "xhprof_foo"
$run_id = $xhprof_runs->save_run($xhprof_data, "xhprof_foo");

echo "---------------\n".
     "Assuming you have set up the http based UI for \n".
     "XHProf at some address, you can view run at \n".
     "http://<xhprof-ui-address>/index.php?run=$run_id&source=xhprof_foo\n".
     "---------------\n";
Copier après la connexion
pour obtenir la page affichée ci-dessous

Comment installer et utiliser loutil danalyse des performances xhprof sous PHP7

Voir l'image

Comment installer et utiliser loutil danalyse des performances xhprof sous PHP7

La partie rouge sur l'image est la partie avec des performances inférieures et une consommation de temps plus longue. Nous pouvons vérifier le code système en fonction des fonctions marquées en rouge. Optimize

Supplément

  • Nom de la fonction : nom de la méthode.

  • Appels : le nombre de fois que la méthode a été appelée.

  • Calls% : le nombre d'appels de méthode en pourcentage du nombre total d'appels de méthode au même niveau.

  • Incl.Wall Time (microsec) : Le temps nécessaire à l'exécution de la méthode, y compris le temps d'exécution des sous-méthodes. (Unité : microseconde)

  • IWall% : Le pourcentage de temps passé à l'exécution de la méthode.

  • Excl. Wall Time (microsec) : Le temps nécessaire pour exécuter la méthode elle-même, à l'exclusion du temps d'exécution des sous-méthodes. (Unité : microseconde)

  • EWall% : Le pourcentage de temps passé à exécuter la méthode elle-même.

  • Incl. CPU (microsecs) : Le temps CPU consacré à l'exécution de la méthode, y compris le temps d'exécution des sous-méthodes. (Unité : microseconde)

  • ICpu% : le pourcentage de temps CPU consacré à l'exécution de la méthode.

  • Excl. CPU (microsec) : Le temps CPU passé à exécuter la méthode elle-même, à l'exclusion du temps d'exécution des sous-méthodes. (Unité : microseconde)

  • ECPU% : le pourcentage de temps CPU consacré à l'exécution de la méthode elle-même.

  • Incl.MemUse(bytes) : La mémoire occupée par l'exécution de la méthode, y compris la mémoire occupée par l'exécution de la sous-méthode. (Unité : octets)

  • IMemUse% : Le pourcentage de mémoire occupé par l'exécution de la méthode.

  • Excl.MemUse(bytes) : La mémoire occupée par l'exécution de la méthode elle-même, à l'exclusion de la mémoire occupée par l'exécution des sous-méthodes. (Unité : octets)

  • EMemUse% : Le pourcentage de mémoire occupé par la méthode elle-même.

  • Incl.PeakMemUse (octets) : Incl.MemUse valeur de crête. (Unité : octets)

  • IPeakMemUse% : Incl.MemUse pourcentage de pointe.

  • Excl.PeakMemUse (octets) : valeur de crête Excl.MemUse. Unité : (octet)

  • EPeakMemUse% : Excl.MemUse pourcentage de pointe.

Apprentissage recommandé :

Tutoriel vidéo php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal