Mesurer les performances avec la classe « Benchmark » dans Laravel

DEV - 23/01
Introduction Lors de la création d'applications Laravel, j'ai souvent besoin de mesurer l'exécution...

Introduction

Lors de la création d'applications Laravel, j'ai souvent besoin de mesurer le temps d'exécution de différents blocs de code. Cela peut se produire lorsque j'expérimente différentes approches pour résoudre un problème ou optimiser le code existant.

Bien qu'il existe des outils dédiés de profilage et de suivi des performances, j'ai parfois besoin d'une simple idée des performances plutôt que d'une analyse détaillée. C'est là que leIlluminer\Support\Benchmarkla classe est utile.

LeRéférenceLa classe fournit plusieurs façons simples de mesurer le temps d’exécution d’un morceau de code.

Dans cet article, nous verrons comment utiliser leRéférenceclasse dans Laravel pour mesurer les performances de différents blocs de code, ainsi que quelques considérations importantes à garder à l'esprit lors de son utilisation.

En utilisant leRéférenceclasse

Comme je l'ai mentionné, j'utilise leRéférencecours assez souvent lors de la création de nouvelles fonctionnalités et de l’expérimentation de différentes approches pour résoudre un problème. Parfois, j'ai une idée de la manière dont je vais implémenter une fonctionnalité, mais je ne suis pas sûr qu'elle soit suffisamment efficace. Donc, dans ce scénario, je pourrais essayer plusieurs implémentations différentes et utiliser leRéférenceclasse pour mesurer leurs temps d’exécution. Cela me permet alors de prendre une décision plus éclairée quant à l’approche à utiliser, en me basant sur des chiffres réels plutôt que sur une simple intuition.

Parfois, les résultats montrent que les différences entre les implémentations sont négligeables et peu susceptibles d’avoir un impact significatif sur les performances globales. D’autres fois, les résultats peuvent être assez surprenants, révélant qu’une approche est nettement plus rapide qu’une autre. Dans ces cas, en utilisant leRéférenceLa classe peut être incroyablement utile pour identifier les goulots d’étranglement potentiels avant qu’ils ne deviennent un problème de production.

Vous pouvez interagir avec leRéférenceclasse de trois manières différentes :

  • Benchmark::mesure()- Mesure le temps d'exécution et le renvoie sous forme de valeur flottante (en millisecondes).
  • Benchmark::valeur()- Mesure le temps d'exécution et renvoie à la fois le résultat du code et le temps d'exécution sous forme de valeur flottant...
    [Courte citation de 8% de l'article original]
Loading...