Lorsqu'un utilisateur signale qu'une fonctionnalité est trop lente, la cause peut être difficile à trouver si cette fonctionnalité dépend d'une longue chaîne d'appels de fonctions et d'objets.
Visual Expert permet d'améliorer l'expérience utilisateur en générant un graphe d'appels, avec les temps d'exécution de chaque nœud, pour aider à identifier les morceaux de code qui ralentissent la fonctionnalité.
Utiliser le graphe d'appels des temps d'exécition pour analyser les performances
Supposons qu'un utilisateur se soit plaint du temps de réponse de l'événement de clic de ce bouton :
- Allez sur Analyse des performances dans la barre de navigation.
Cliquez sur Temps d'exécution (Graphe d'appels).
- Visual Expert affichera la chaîne des appels exécutés après l'événement clic de ce bouton, et pour chaque étape du process, le temps de réponse moyen.
L'exemple ci-dessus repose sur une très courte chaîne d'appels, et peut être étudié simplement en regardant les quelques morceaux de code concernés.
Prenons un cas plus complexe avec l'exemple ci-dessous :
Ce graphe montre des méthodes PowerBuilder s'appelant les unes les autres, avec une chaîne de plusieurs centaines d'appels différents. Il serait difficile pour un développeur de produire ce graphe, et encore plus de déterminer où le temps est perdu.
Cette fonctionnalité de Visual Expert permet aux développeurs de PB d'identifier visuellement la méthode présentant le temps de réponse le plus élevé (barre jaune), de l'optimiser et d'améliorer une fonctionnalité particulière de l'application.
Utiliser la macro "SQL les plus lents" pour l'analyse des performances
Imaginez qu'un DBA trouve un SQL particulier qui ralentit la base de données. Il peut le signaler à l'équipe de développement, mais celle-ci aura du mal à trouver d'où vient ce SQL.
Visual Expert permet d'identifier quel objet / méthode a généré ce SQL.
Pour cela :
- Sélectionnez la table concernée - par exemple la table [CUSTOMER].
- Dans la barre de navigation, allez sur Analyse des performances. Cliquez sur [SQLs les plus lents accédant à cette table].
Visual Expert affichera les SQLs les plus lents triés par Temps d'Exécution Moyen.
- Pour savoir d'où vient un SQL particulier : Sélectionnez-le et cliquez sur Documentation du code > Localiser. VE affichera les conteneurs de cet élément dans une hiérarchie. Dans l'exemple ci-dessous, une instruction d'insertion lente provient de la procédure stockée "InsertCustomer", contenue dans le schéma nommé "DATA".
- Remarque : Visual Expert peut afficher la hiérarchie des conteneurs pour plusieurs SQL à la fois.
Optimisation des performances pour PowerBuilder | Regarder la démo
Tutoriel vidéo de la conférence Elevate 2022 démontrant les cas pratiques ci-dessus :