Simplifiez la gestion du cycle de vie des produits API

Bobur Umurzokov

Bobur Umurzokov

March 28, 2023

Technology

Les API modernes sont souvent conçues, construites et exploitées comme des produits consommés à la fois par des systèmes internes et des tiers, et elles doivent être gérées de manière similaire. De nombreuses grandes organisations considèrent les API comme un composant critique et stratégique et, à ce titre, elles établissent une stratégie de programme API et définissent des objectifs commerciaux clairs, des contraintes et des ressources. Une fois la stratégie définie, l'approche tactique quotidienne se concentre souvent sur la gestion du cycle de vie des API.

La gestion complète du cycle de vie des API (APIM) couvre toute la durée de vie d'une API, qui commence à l'étape de planification et se termine lorsque l'API est retirée. De nombreuses étapes du cycle de vie sont intégrées à une passerelle API (le composant principal du système de gestion des API). Cet article vous guide à travers les 3 étapes clés du cycle de vie d'un produit API : création, contrôle et consommation, et explore pourquoi la passerelle API est importante à chaque étape du cycle de vie.

10 étapes typiques du cycle de vie d'une API

Le cycle de vie d'une API est un modèle qui peut vous aider à suivre l'évolution de votre API et à adapter votre gestion à mesure qu'elle mûrit. En général, la gestion du cycle de vie des API peut être décomposée en plusieurs phases différentes :

  1. Construction - Conception et construction de votre API.
  2. Test - Vérification des attentes en matière de fonctionnalité, de performance et de sécurité.
  3. Publication - Exposition de vos API aux développeurs.
  4. Sécurisation - Atténuation des risques et préoccupations en matière de sécurité.
  5. Gestion - Maintenance et gestion des API pour s'assurer qu'elles sont fonctionnelles, à jour et répondent aux exigences commerciales.
  6. Intégration - Permettre aux développeurs d'apprendre rapidement comment consommer les API exposées. Par exemple, offrir une documentation OpenAPI ou AsyncAPI et fournir un portail et un environnement de test.
  7. Analyse - Permettre l'observabilité et analyser les données de surveillance pour comprendre l'utilisation et détecter les problèmes.
  8. Promotion - Publicité des API auprès des développeurs, par exemple en les listant dans un marché d'API.
  9. Monétisation - Permettre la facturation et la collecte de revenus pour l'utilisation d'une API. Nous abordons cet aspect de la gestion du cycle de vie des API comme une étape distincte dans la section suivante.
  10. Retrait - Soutien à la dépréciation et à la suppression des API, qui se produit pour diverses raisons, notamment les changements de priorités commerciales, les évolutions technologiques et les préoccupations de sécurité.

Gestion du cycle de vie des produits API

Considérez qu'il existe quatre étapes généralement acceptées dans le cycle de vie d'un produit telles que développement, croissance, maturité et déclin que tous les produits traversent du point de vue de la demande du marché. Si nous prenons le concept du cycle de vie du produit et l'appliquons aux API pour aboutir à un cycle de vie des produits API composé de 5 étapes : création, publication, réalisation, maintenance et retrait. Vous pouvez réduire cette liste à 3 phases principales : création, contrôle et consommation, respectivement, en intégrant la passerelle API pour gérer l'ensemble du cycle de vie du produit API.

Le diagramme ci-dessous montre comment la gestion du cycle de vie des API s'intègre avec une passerelle API et des services backend :

La gestion du cycle de vie des API s'intègre avec une passerelle API

Avant d'examiner chacune de ces 3 étapes, comprenons d'abord quels problèmes la passerelle API peut réellement résoudre.

La passerelle API résout des problèmes clés

Lorsque vous traitez des API, de la gestion du trafic et du choix des technologies associées, vous devez équilibrer à la fois la mise en œuvre à court terme et la maintenabilité à long terme. Il existe de nombreuses préoccupations transversales liées aux API, notamment la maintenabilité, l'extensibilité, la sécurité, l'observabilité, la gestion du cycle de vie des produits et la monétisation. Une passerelle API peut aider à résoudre tous ces problèmes !

Voici un aperçu des problèmes clés qu'une passerelle API peut résoudre, tels que :

  • Réduire le couplage en utilisant un adaptateur/facade entre les frontends et les backends.
  • Simplifier la consommation en agrégeant/traduisant les services backend.
  • Protéger les API contre la surutilisation et les abus avec la détection et l'atténuation des menaces.
  • Comprendre comment les API sont consommées (observabilité).
  • Gérer les API comme des produits avec la gestion du cycle de vie des API.
  • Monétiser les API en utilisant la gestion des comptes, la facturation et le paiement.

Phase de création d'API

La phase de création d'API est la première étape du processus de gestion du cycle de vie des produits API où vous concevez, orchestrez, transformez, documentez et testez votre API. À ce stade, les passerelles API modernes comme Apache APISIX peuvent être utiles pour construire votre API à partir de zéro ou importer des définitions d'API à partir de diverses sources comme la structure YAML/JSON OpenAPI pour enregistrer des routes et des upstreams.

Vous pourriez vouloir exposer une nouvelle API en combinant des informations provenant d'autres API existantes. Avec la capacité de composition de réponse de la passerelle API, vous pouvez y parvenir. Ou vous connectez les systèmes internes et externes via une nouvelle API où ils utilisent différents formats de communication, de XML/SOAP à JSON REST et vice versa. Vous avez une API REST existante, mais vous construisez une nouvelle API GraphQL. Par exemple, Apache APISIX vous permet de convertir l'API GraphQL en une API REST.

Avant la publication, il est important de terminer les tests d'API pour s'assurer qu'elles respectent les contrats d'API établis avec vos applications clientes. Dans un tel cas, vous pouvez simuler les réponses de votre API avec la passerelle API pour tester l'intégration.

Phase de contrôle d'API

Dans la phase de contrôle, vous appliquez des politiques de sécurité, déployez, gérez, surveillez et mettez à l'échelle votre API. Après les tests, il est temps de sécuriser votre API pour s'assurer que seuls les utilisateurs et applications autorisés peuvent y accéder et pour empêcher les accès non autorisés ou les abus. Cela peut impliquer l'utilisation de techniques telles que la validation des entrées, OAuth ou les clés API, et la mise en place de contrôles pour gérer l'accès à l'API, comme la configuration de limites d'utilisation ou de quotas avec la passerelle API. De plus, vous surveillez les métriques, traces et logs de votre API et optimisez ensuite les performances de l'API en fonction des données analytiques.

Dans la même phase, vous pouvez tirer parti de diverses stratégies de publication d'API avec la passerelle API pour déployer instantanément l'API dans l'environnement cible (développement, test, staging et production) sans effort de configuration et sans temps d'arrêt. Vous intégrez l'API avec des outils DevOps pour réduire efficacement le temps de déploiement en utilisant les meilleures pratiques d'intégration continue/déploiement continu (CI/CD).

À ce stade, vous gérez également les modifications apportées à l'API au fil du temps, pour vous assurer que toute mise à jour ou modification est correctement testée et ne provoque pas de conséquences involontaires. Vous pouvez ajouter plusieurs versions d'API pour gérer les mises à jour.

Phase de consommation d'API

Dans la phase de consommation d'API, l'API est mise à disposition des développeurs et autres utilisateurs externes pour qu'ils la découvrent. Cela implique de permettre aux développeurs de consommer les API exposées, de fournir une documentation OpenAPI et d'offrir un environnement de test pour que les développeurs testent leurs intégrations.

Les consommateurs d'API sont les utilisateurs réels des API. Avec l'aide d'une solution de gestion d'API, vous pouvez enregistrer des consommateurs d'API uniques et multiples et configurer diverses règles pour différents consommateurs (utilisateurs d'API privées, partenaires ou publiques).

À ce stade, vous pouvez tirer parti de diverses stratégies de promotion d'API pour faire la publicité des API auprès des développeurs et les lister dans un marché d'API. De plus, vous pouvez envisager d'activer la facturation et la collecte de revenus pour l'utilisation d'une API afin de monétiser votre API.

Résumé

Globalement, la gestion du cycle de vie des produits API se compose de trois phases principales : création, contrôle et consommation. La phase de création d'API est une étape critique dans le processus de gestion du cycle de vie des API, car elle pose les bases du succès de l'API où vous concevez et construisez votre API. La phase de contrôle d'API aide à s'assurer que les API sont sécurisées, performantes et disponibles pour les utilisateurs et applications autorisés. La phase de consommation d'API représente le point où les développeurs et autres utilisateurs commencent à tirer de la valeur de l'API. En veillant à ce que l'API soit bien documentée, facile à utiliser et performante, les organisations peuvent encourager l'adoption et maximiser la valeur de leurs investissements dans les API.

Une passerelle API est un outil qui se place devant une API et agit comme un point d'entrée pour un groupe défini de services. Elle participe au cycle de vie complet de la gestion des API, couvrant le processus de création, de déploiement et de gestion de vos API. Certains avantages de l'utilisation d'une passerelle API sont de fournir l'API optimale pour chaque consommateur, de réduire le nombre de requêtes et d'appliquer des politiques de sécurité.

Ressources connexes

Contenu recommandé

Tags: