[:fr]Nous avons le plaisir d’accueillir Blackfire en tant que sponsor national du Forum PHP 2019, l’occasion pour nous d’en savoir un peu plus à leur sujet au travers de cette interview. Christophe Dujarric, Chief Product Officer chez Blackfire, répond à nos questions.
Blackfire est un outil pouvant être utilisé aussi bien en production qu’en test/staging et développement : Pouvez-vous nous en dire plus ?
Blackfire est un outil de mesure de consommation de ressources par le code PHP.
Il est clé de pouvoir utiliser un tel outil sur une machine de développement, car cela permet à un développeur de travailler rapidement, d’essayer de nouvelles idées pour optimiser son code tout en les validant via la comparaison de profils.
Et il est aussi clé de pouvoir effectuer des mesures directement en production. C’est là qu’il y a les vraies machines, la vraie configuration, DB, etc… Le point est d’éviter d’en rester à « ça marche sur mon poste ». Un des avantages techniques de Blackfire est qu’il est possible de générer des profils sans le moindre impact (overhead) pour les utilisateurs finaux : l’instrumentation du code, qui permet de collecter les métriques de consommation, se fait uniquement pour les requêtes déclenchées à des fins de profiling. Pas d’instrumentation des requêtes d’utilisateurs finaux, pas d’overhead.
La cerise sur le gâteau est d’utiliser Blackfire dans tout pipeline de test/staging. Blackfire offre de multiples possibilités d’automatiser le profiling (notamment via le Blackfire Player), ainsi que d’écrire des tests de performance, très similaires aux test d’intégration ou tests unitaires. Ces tests peuvent d’ailleurs aussi être exécutés directement en production. Le bénéfice est double : automatisation complète du profiling (plus qu’à attendre les résultats) et statut rouge/vert des tests (identification rapide des goulots d’étranglement).
(suite…)