Case Study: Leboncoin : optimisation du trafic API pour la durabilité et la performance
Défi
(link: https://www.leboncoin.fr/ class: mylink lang: de rel: nofollow role: button target: _blank title: Wikipédia text: Leboncoin), leader français du marché en ligne, était confronté à un défi de taille : un trafic API excessif qui consommait des ressources et gonflait les coûts. L'équipe Promote, chargée de diffuser des messages dynamiques aux utilisateurs via des pop-ins, des bannières et des notifications, générait 522 millions d'appels API par semaine, dont 85 % aboutissaient à des erreurs 404.
Cette inefficacité nécessitait jusqu'à 120 répliques de serveurs et poussait l'utilisation du processeur de la base de données à 60 %, augmentant considérablement leur empreinte carbone et leurs coûts opérationnels. À mesure que leur empreinte numérique s'est développée, ils ont pris conscience de l'urgence de trouver une solution évolutive et respectueuse de l'environnement qui permettrait de maintenir la fonctionnalité de la plateforme tout en réduisant le gaspillage.
Objectifs
Leboncoin visait à éliminer les requêtes API redondantes afin de :
- Réduire le trafic API global
- Diminuer les besoins en infrastructure
- Réduire la consommation d'énergie et les émissions de carbone
- Réduire les coûts d'infrastructure
- Améliorer les performances du système
Approche
Dans le cadre de l'(link: https://www.apidays.global/sustainable-digital-challenge/ class: mylink lang: de rel: nofollow role: button target: _blank title: Wikipédia text: Défi numérique durable Apidays), Leboncoin a mis en œuvre une solution en trois volets au cours d'un sprint unique de deux semaines en décembre 2023 :
- Architecture de point de terminaison intelligente : création d'un nouveau point de terminaison API pour vérifier la disponibilité du contenu avant de lancer d'autres requêtes, évitant ainsi tout traitement inutile en l'absence de contenu pertinent.
- Mise en cache stratégique : mise en place de mécanismes de mise en cache pour éviter les requêtes inutiles répétées lors du chargement des pages, réduisant ainsi les appels redondants qui consommaient des ressources.
- Gestion dynamique des fonctionnalités : déploiement de drapeaux de fonctionnalités pour désactiver les emplacements de messages inutilisés, réduisant automatiquement la charge du système pour les fonctionnalités peu utilisées.
Impact
La stratégie d'optimisation a apporté des avantages immédiats et substantiels :
- Expérience client/UX : amélioration de l'expérience utilisateur grâce à des temps de chargement plus rapides et une consommation de bande passante réduite.
- Améliorations techniques : améliorations techniques et performances significatives, notamment :
- Élimination de 3,62 milliards d'appels API au cours de la première semaine.
- Réduction des réponses d'erreur 404 de 71,93 %.
- Diminution du nombre de répliques de serveurs de 120 à 40.
- Réduction de l'utilisation du processeur de la base de données de 60 % à 20 %.
- Réduction des connexions à la base de données de 25 %.
- Impact commercial : réduction des coûts Kubernetes à un tiers des dépenses précédentes et amélioration spectaculaire de l'évolutivité de la plateforme.
- Gains en matière de durabilité : économie de 49,66 cœurs de processeur (équivalent à la mise hors tension d'une instance AWS c6g.12xlarge) et réduction des émissions de carbone d'environ 24 kg de CO₂ (selon l'estimateur d'empreinte carbone de l'(link: https://engineering.teads.com/sustainability/carbon-footprint-estimator-for-aws-instances/ class: mylink lang: de rel: nofollow role: button target: _blank title: Wikipédia text: Ingénierie Teads)).
Points clés à retenir
- L'efficacité numérique est synonyme de durabilité : la réduction du gaspillage numérique est aussi importante que l'optimisation des ressources physiques.
- Petits changements, grand impact : des optimisations techniques ciblées peuvent permettre d'économiser des milliards de requêtes et d'obtenir des avantages substantiels.
- La dette technique a un coût environnemental : les architectures obsolètes gaspillent de l'énergie et des ressources.
- L'ingénierie verte profite à tous : les améliorations en matière de durabilité améliorent l'expérience utilisateur, réduisent les coûts et augmentent les performances.
Prochaines étapes
Leboncoin prévoit d'optimiser davantage son architecture API en étendant ces principes à d'autres systèmes de sa plateforme. L'entreprise souhaite continuer à surveiller et à mesurer l'impact environnemental de ses opérations numériques, en établissant de nouvelles références en matière de développement durable dans le secteur technologique.
Conclusion
L'approche proactive de Leboncoin démontre comment repenser les aspects fondamentaux de la conception des API peut apporter des avantages techniques, financiers et environnementaux. En intégrant les principes de l'éco-conception dans sa stratégie produit, l'entreprise a prouvé que l'élimination des déchets numériques est bénéfique tant pour les opérations commerciales que pour la durabilité environnementale.