Maison  >  Article  >  développement back-end  >  Comment surveiller les performances des applications en PHP ?

Comment surveiller les performances des applications en PHP ?

PHPz
PHPzoriginal
2023-05-13 08:16:51883parcourir

PHP est un langage de script côté serveur largement utilisé dans le développement Web. Il est efficace, simple et facile à apprendre. Il est largement utilisé dans le développement de sites Web, d'applications Web et de logiciels côté serveur. La surveillance des performances des applications est un sujet très important pour ces applications car elle aide les développeurs à détecter les goulots d'étranglement des performances dans leurs applications et à améliorer ainsi les performances de leurs applications. Cet article présentera comment effectuer la surveillance des performances des applications en PHP et fournira quelques outils et techniques pour aider les développeurs PHP à résoudre les problèmes.

1. Problèmes de performances de PHP

Avant de surveiller les performances des applications, nous devons comprendre les problèmes de performances de PHP. Les problèmes de performances en PHP peuvent être causés par diverses raisons, notamment :

  1. Problèmes de requêtes de base de données : requêtes lentes, requêtes en double, etc.
  2. Problèmes de conception de code : logique et branches de code trop complexes, extraits de code répétés , etc.
  3. Problèmes de transmission réseau : connexion réseau lente, réponse lente du serveur, etc.
  4. Problèmes de gestion de la mémoire : fuites de mémoire, récursion infinie, etc.

Ces problèmes entraîneront une dégradation des performances des applications, nous devons donc en utiliser des outils et des techniques pour nous aider à trouver et à résoudre ces problèmes.

2. Outils pour la surveillance des performances des applications PHP

  1. Xdebug

Xdebug est une extension de PHP qui peut fournir des fonctions utiles lorsque PHP est en cours d'exécution, notamment l'analyse du code, la couverture du code, le débogage et l'analyse des performances, etc. En termes d'analyse des performances, Xdebug peut fournir un traçage des applications PHP et des requêtes de bases de données, et afficher le temps d'exécution et la quantité de mémoire utilisée par chaque fonction.

Voici les étapes pour installer Xdebug sur Ubuntu :

  1. Installer Xdebug :

    sudo apt-get install php-xdebug

  2. Modifier le fichier de configuration Xdebug :

    sudo vim /etc/php/7.2/mods -Available / xdebug.ini

    add SEOT:

    zend_extension = xdebug.so
    xdebug.default_enable = 1
    xdebug.remote_enable = 1
    xDebug.Remote_handler = dbgp
    xdebug.re_host = 127.0.0.1
    xdebug.repor = 9000
    xdebug.remote_autostart=1
    xdebug.profiler_enable_trigger=1
    xdebug.profiler_output_dir="/tmp"
    xdebug.profiler_output_name="cachegrind.out.%t.%p"

  3. Redémarrer Apache

    s service un redémarrage de pache2

Une fois l'installation et la configuration terminées, nous pouvons utiliser Xdebug pour analyser les performances de l'application. Voici des exemples impliquant des requêtes de données :

1. Activez la fonction de traçage de Xdebug :

xdebug_start_trace();

2 Code qui nécessite un suivi des performances

...

3. Le suivi des performances enregistrera toutes les requêtes SQL et nous pouvons utiliser KCacheGrind pour afficher ces informations.

Profil PHP

    Le profil PHP est une autre extension avec des fonctions similaires à Xdebug. Il peut fournir des informations telles que le temps d'exécution de chaque fonction, le nombre d'appels de chaque fonction et la quantité de mémoire utilisée par chaque fonction. Contrairement à Xdebug, dans PHP Profile, nous devons utiliser une extension supplémentaire pour activer la fonctionnalité d'analyse des performances.
  1. Voici les étapes pour installer et configurer le profil PHP sur Ubuntu :

Installer le profil PHP :

    sudo apt-get install php-pear
  1. sudo pecl install -f xhprof


    Modifier le profil PHP :

  2. sudo vim /etc/php/7.2/cli/php.ini
  3. Ajoutez ce qui suit :

    extension=xhprof.so

    Redémarrez Apache :

  4. sudo service apache2 restart
  5. Une fois l'installation et la configuration terminées , nous pouvons utiliser PHP Profile pour analyser les performances de l'application. Semblable à Xdebug, nous devons ajouter un code de suivi des performances au code, comme suit :

  6. 1. Activer la fonction de suivi du profil PHP :

xhprof_enable();

2.

3. Arrêter le suivi

$xhprof_data = xhprof_disable();

Ensuite, nous pouvons utiliser n'importe quel outil prenant en charge le format de données xhprof pour afficher ces informations.

3. Vérifiez la conception du code et les requêtes de base de données

En plus d'utiliser les outils présentés ci-dessus, nous pouvons également trouver des goulots d'étranglement en termes de performances dus aux aspects de la conception du code et des requêtes de base de données.

Lorsque nous recherchons des problèmes dans la conception de code, nous devons trouver une logique et des branches répétées ou complexes dans le code pour rendre le code plus clair et plus simple, améliorant ainsi la maintenabilité et les performances du code.

Lorsque nous recherchons des problèmes avec les requêtes de base de données, nous devons vérifier si la requête est nécessaire, s'il y a des requêtes en double inutiles, s'il y a une syntaxe de requête incorrecte et si l'index correct est utilisé, etc.

4. Résumé

La surveillance des performances des applications est une partie importante de tout processus de développement. Elle peut nous aider à trouver les goulots d'étranglement des performances de l'application et à fournir des solutions correspondantes pour améliorer les performances de l'application. PHP est efficace, simple et facile à apprendre, mais il nécessite également une surveillance des performances des applications pour détecter ses problèmes de performances. Cet article présente certains outils et technologies de surveillance des performances des applications PHP, notamment Xdebug, PHP Profile, etc., et espère être utile aux développeurs 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!

Déclaration:
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