DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Nouveauté WEBDEV 2024 !
Aide / Tuto WEBDEV / Tuto - Optimiser un projet WEBDEV
  • Leçon 2 - Analyseur de performances
  • Principe de l'analyseur de performances
  • Lancer l'analyseur de performances
  • Analyse du résultat
  • Résultat de l'exemple
  • Optimisation du projet
  • Conclusion

Tuto - Optimiser un projet WEBDEV

Leçon 2 - Analyseur de performances
Ce que vous allez apprendre :
  • Présentation.
  • Lancer l'analyseur de performances.
  • Analyser le résultat.
Durée de la leçon 15 mn
Principe de l'analyseur de performances
L'analyseur de performances (appelé également Profiler) est un outil permettant de vérifier et d'optimiser le temps d'exécution des traitements de votre site.
Son principe est simple :
  • Vous testez votre site.
  • Pendant ce test, l'analyseur de performances répertorie toutes les actions effectuées et sauvegarde les temps d'exécution de chacun des traitements exécutés.
A la fin du test, l'analyseur de performances vous présente :
  • les 10 manipulations qui ont pris le plus de temps,
  • la durée et le nombre d'appels de tous les traitements exécutés.
Le projet "WW_Optimisation" que nous avons manipulé dans la leçon précédente, contient une page spécifique permettant de visualiser des exemples de résultats obtenus avec l'analyseur de performances.
Lancer l'analyseur de performances
L'analyseur de performances peut être lancé directement depuis l'éditeur de WEBDEV.
Pour lancer l'analyseur de performances sur le projet "WW_Optimisation" :
  1. Dans le ruban, sous le volet "Projet", dans le groupe "Audit et performances", déroulez "Analyser les performances" et sélectionnez "Analyser les performances".
  2. Le test du projet se lance.
  3. Cliquez sur le bouton "PAGE DE TEST DE L'ANALYSEUR DE PERFORMANCES".
  4. Cliquez sur le bouton "TRAITEMENT A ANALYSER".
  5. Validez la fenêtre d'information et arrêtez le test du projet en fermant le navigateur. La fenêtre du compte-rendu de l'analyseur de performances apparaît.
Les résultats sont affichés dans plusieurs onglets :
  • l'onglet "Synthèse" présente les dix traitements qui ont pris le plus de temps.
  • l'onglet "Cartographie" présente une vision graphique des traitements les plus importants.
  • l'onglet "Détail" présente tous les traitements lancés lors du test de l'application (classés du plus long au plus rapide).
  • l'onglet "Appels" permet de visualiser le détail des opérations réalisées dans un traitement.
Analyse du résultat

Résultat de l'exemple

Détaillons le résultat dans le cas de notre exemple.
  • L'onglet "Synthèse" présente les dix traitements les plus consommateurs de temps. Dans notre exemple, nous pouvons voir que la procédure locale "MetAJourStockProduits" prend plus de 3 secondes à s'exécuter (ce temps peut varier en fonction de la puissance de votre machine).
    Analyseur de performances - Onglet 'Synthèse'
  • L'onglet "Cartographie" permet d'identifier de manière visuelle ce qui a pris le plus de temps. Dans notre cas, c'est un appel à la fonction HTTPRequête :
    Analyseur de performances - Onglet 'Cartographie'
  • L'onglet "Détail" présente tous les traitements ou événements appelés du plus long au plus rapide.
    Analyseur de performances - Onglet 'Détail'
Dans notre cas, l'onglet "Détail" permet de retrouver l'appel à la fonction HTTPRequête dans les éléments prenant le plus de temps.
  1. Sélectionnez cette ligne. Nous allons voir dans le code si un problème peut expliquer ce ralentissement.
  2. En cliquant sur le bouton "Appels", le détail des appels de la procédure MetAjourStockProduits apparaît.
    Appels effectuées par la procédure locale
  3. Sélectionnez la ligne "HTTPRequête" et cliquez sur le bouton "Code" : la ligne de code WLangage correspondante est affichée sous l'éditeur de code.
  4. Fermez l'analyseur de performances.
  5. La ligne de code WLangage exécutée est la suivante :
    (serveur)
    HTTPRequête("adr-fournisseur")
    Le ralentissement vient du fait que l'adresse spécifiée pour la fonction HTTPRequête est inaccessible.
    L'éditeur de code indique qu'une erreur a été trouvée en exécution sur cette ligne de code en affichant une icône "Sens interdit". En survolant cette icône, le détail de l'erreur est affiché.

Optimisation du projet

Nous allons optimiser ce code :
  1. Remplacez la ligne de code contenant la fonction HTTPRequête par la ligne de code suivante :
    (serveur)
    // Vérifie l'accessibilité du serveur fournisseur
    HTTPRequête("www.google.fr")
  2. Enregistrez le code (Ctrl + S).
Nous allons maintenant relancer l'analyseur de performances :
  1. Sous le volet "Projet", dans le groupe "Audit et performances", déroulez "Analyser les performances" et sélectionnez "Analyser les performances".
  2. Le test du projet se lance.
  3. Cliquez sur le bouton "PAGE DE TEST DE L'ANALYSEUR DE PERFORMANCES".
  4. Cliquez sur le bouton "TRAITEMENT A ANALYSER".
  5. Validez la fenêtre d'information et arrêtez le test du projet. La fenêtre du compte-rendu de l'analyseur de performances apparaît.
  6. Sous l'onglet "Cartographie", la fonction HTTPRequête n'apparaît plus avec la même importance.
    Analyseur de performances - Onglet 'Cartographie'
L'analyseur de performances a permis d'optimiser notre site.
Fermez la fenêtre de rapport de l'analyseur de performances.
Conclusion
Nous avons vu dans cette leçon une utilisation interactive de l'analyseur de performances.
L'analyseur de performances peut également être lancé depuis un de vos traitements en WLangage, grâce aux fonctions suivantes :
  • AnalyseurDébut, qui lance la "collecte d'informations" pour l'analyseur de performances.
  • AnalyseurFin, qui arrête la "collecte d'informations" pour l'analyseur de performances.
Dans ce cas, seul le code présent entre les fonctions AnalyseurDébut et AnalyseurFin est analysé. Le résultat est enregistré sous forme d'un fichier WPF qui peut être lu par WEBDEV.
Pour plus de détails, consultez Analyseur de performances.
Leçon précédenteSommaire
Version minimum requise
  • Version 2024
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 15/11/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale