linkedin-ico github-ico

Audit et optimisation d'une API

relevanc

En janvier 2023, j'ai eu l'opportunité de travailler avec relevanC à Paris pour effectuer un audit complet et une optimisation de leur API. Pendant un mois, j'ai concentré mes efforts sur l'audit du code de l'application et la rédaction d'un rapport détaillé. Cette mission a également impliqué l'optimisation des routes sur l'API et la mise en place d'outils de monitoring.

Technologies utilisées pour l'audit d'une API

Pour mener à bien cette mission, plusieurs technologies ont été essentielles.

Docker et DevOps : Environnement de développement et déploiement

L'utilisation de Docker a permis de créer un environnement de développement cohérent et reproductible, facilitant ainsi le déploiement et les tests. Les pratiques DevOps ont également joué un rôle crucial en automatisant les processus de développement et de déploiement, garantissant une intégration continue et un déploiement continu.

Git et Bitbucket : Gestion du code source

La gestion du code source a été effectuée via Git et Bitbucket. Ces outils ont permis une collaboration efficace avec l'équipe de relevanC, assurant une gestion structurée des versions du code et une intégration facilitée des modifications.

New Relic et Sentry : Monitoring et performance

Pour le monitoring et l'analyse des performances, nous avons utilisé New Relic et Sentry. New Relic a fourni des insights détaillés sur les performances de l'application, permettant d'identifier les goulots d'étranglement et les opportunités d'optimisation. Sentry, de son côté, a aidé à traquer les erreurs et à améliorer la fiabilité de l'API.

SonarQube : Analyse de la qualité du code

L'analyse de la qualité du code a été réalisée avec SonarQube. Cet outil a permis d'identifier les problèmes de qualité du code, tels que les bugs potentiels, les vulnérabilités de sécurité et les mauvaises pratiques de codage, fournissant ainsi des recommandations pour améliorer la maintenabilité et la robustesse du code.

Blackfire : Profilage des performances

Blackfire a été utilisé pour le profilage des performances de l'API. Cet outil a permis de mesurer et d'analyser en profondeur les performances de l'application, identifiant les points de ralentissement et fournissant des suggestions pour optimiser le code.

Optimisation de l'API du catalogue des promotions de Casino

L'un des aspects les plus critiques de cette mission a été l'optimisation de l'API du catalogue des promotions de Casino. Grâce à l'audit réalisé, nous avons pu identifier plusieurs axes d'amélioration et optimiser les routes de l'API pour une meilleure performance.

Cependant, nous avons rapidement été confrontés à des limitations liées à la conception de base de l'API. Ces limitations ont freiné les optimisations possibles dans la version actuelle. Reconnaissant ces contraintes, relevanC a pris l'initiative de lancer le développement d'une nouvelle version de l'API en interne, une décision judicieuse qui promet de meilleures performances et une plus grande flexibilité à long terme.

Résultats de l'audit et prochaines étapes

L'audit du code et les optimisations effectuées ont permis de mettre en lumière les forces et les faiblesses de l'API existante. Les outils de monitoring et de profilage ont fourni des données précieuses qui ont guidé les améliorations apportées.

Malgré les contraintes de la conception initiale, les optimisations réalisées ont amélioré la performance de l'API, offrant une meilleure expérience utilisateur. La décision de relevanC de développer une nouvelle version de l'API en interne est une étape prometteuse vers une solution plus robuste et performante.

Cette expérience a été enrichissante et a permis de démontrer l'importance d'un audit technique approfondi pour identifier les opportunités d'amélioration et guider les décisions stratégiques pour le développement futur.