Dette technique : Mesurer les performances Back End

La performance back end est souvent peu suivie car peu visible. Certains rajouteront aussi qu’elle influe peu sur le rendu utilisateur final, ce qui n’est pas totalement vrai. Souvent les optimisations Front sont bien plus visibles pour l’expérience utilisateur. Cependant, il est très utile de mesurer les performances Back End, car les quelques millisecondes grignotées sur une requête, lorsqu’on les multiplie par des milliers de requêtes, peuvent permettre d’éviter à un serveur de tomber et de rendre votre plateforme inaccessible.

Comment mesurer vos performances Back End ?

New Relic est un bon outil pour mesurer rapidement la performance de votre code back end (coté serveur).

New Relic est très riche et pas évident à prendre en main. Il propose énormément d’informations. Ce qu’il faut retenir, c’est qu’il permet de facilement voir les principaux problèmes de performance et de les filtrer soit par nombre d’occurrences soit par temps de réponse. 

C’est un point important car optimiser les temps de réponses d’une fonctionnalité d’import appelée la nuit une fois par semaine est certes important mais moins impactant pour l’utilisateur que d’optimiser une requête ou un bout de code affiché sur chaque page.

New relic permet aussi de suivre les erreurs et leur récurrence, ce qui permet de les corriger.

New Relic

Certaines interfaces très visuelles permettent de facilement voir les problèmes et en trouver la source : 

Afin d’utiliser New Relic, il est nécessaire d’installer une sonde appelée “agent”, qui permettra à la fois de tracer les problèmes, mais aussi de vous aider dans leur débugage. Quand vous identifiez un problème de performance, New Relic vous propose des outils d’analyse et d’assistance vous permettant de rapidement identifier la source du problème.

Une autre fonctionnalité intéressante : lier la performance et le matériel, surtout dans le cadre d’une infrastructure cloud “moins maîtrisée”. New Relic génère ainsi des graphes, permettant de relier la consommation des ressources serveurs et les problèmes de performance. Si on présente le problème différemment, cela peut permettre d’économiser des ressources matérielles.

New relic propose aussi des analyses Front end, mais des outils spécialisés paraissent plus adaptés. L’intérêt de cette fonctionnalité est surtout de voir l’amélioration corrélée entre Front et Back : 

Là aussi l’évolution est importante à suivre. Mais attention à être attentif aux potentiels dérapages ! En effet, une requête lente mais exécutée rarement peut paraître anodine. Mais si cette requête est finalement plus utilisée ou si elle tombe au moment d’un pic de charge, cela peut avoir des conséquences déplorables.

Mon conseil sera donc d’essayer de réduire au maximum ce qui peut ralentir votre serveur et de maximiser ce qui peut être délivré en cache ou via des services tiers plus performant. Lorsque votre code doit absolument être exécuté, suivez le de près et apportez de l’attention à l’optimisation de ce code.

Voir l’étude de cas
Lire l’article
Voir le témoignage
Fermer