Microservices et API : une association gagnante

Les architectures de microservices gagnent de plus en plus de terrain au sein des entreprises de toutes tailles et comptent aujourd'hui parmi les méthodes de conception d'applications logicielles les plus répandues. Les microservices ont la réputation d'améliorer l'agilité des entreprises en permettant de modifier et de développer de nouvelles applications plus rapidement qu'avec une approche monolithique de développement traditionnelle. Ce type d'architecture a été adopté avec succès, notamment par des groupes comme Netflix, Google et Amazon à qui d'autres ont emboîté le pas.

Pour la plupart des entreprises, l'adoption des architectures de microservices et la transition qu'elles imposent représentent une évolution au cours de laquelle les applications basées sur les microservices vont coexister et interagir avec leurs homologues traditionnels. Les microservices doivent cohabiter avec les applications traditionnelles, les systèmes existants et les processus métier, ainsi qu'avec les impératifs relatifs aux opérations et à la conformité.

Certes, les microservices présentent des avantages, mais aussi des inconvénients comme la prolifération des services, l'augmentation de la complexité et le risque de tâches redondantes. Pour assurer une implémentation efficace de leur architecture, les entreprises doivent à la fois faire appel aux microservices et aux API.

Nombre d'entreprises se heurtent au même défi : comment associer une architecture de microservices avec les différents modèles d'architectures déjà déployés au sein de leur structure. L'une des méthodes utilisées pour gérer la vitesse et la flexibilité fournies par les microservices tout en maîtrisant la complexité réside dans l'utilisation d'API. Une stratégie fondée sur les API facilite la gestion des microservices et leur permet de coexister avec les systèmes legacy existants, au lieu d'évoluer dans un périmètre circonscrit, loin de ces systèmes centraux. L'association d'une architecture de microservices et d'une stratégie d'API globale est une manière fiable de profiter de tous les avantages des microservices en en limitant les inconvénients.

Fonctionnement de l'association API-microservices

Auparavant, les API se résumaient à des interfaces à code de programmation de bas niveau. Aujourd'hui, ce sont des produits à part entière répondant à certaines normes, comme la norme REST par exemple. Elles sont donc pratiques d'utilisation pour les développeurs et présentent une plus grande discipline de gestion et de gouvernance. Les fournisseurs d'API se livrent désormais une véritable bataille pour attirer l'attention des développeurs et l'on assiste à la naissance de toute une économie des API qui s'articule autour de l'échange de valeur entre consommateurs et fournisseurs d'API.

Ce changement dans l'utilisation des API entraîne aussi une évolution des exigences techniques. Les API nécessitent aujourd'hui des portails sophistiqués pour permettre aux développeurs de les découvrir et de les essayer. Il faut aussi des mécanismes pour s'inscrire, s'acquitter du paiement requis et réguler leur utilisation. Et, puisque les API sont exposées en externe, elles doivent être protégées efficacement à l'aide d'une passerelle d'API. Cette gestion des API permet d'assurer le contrôle, la visibilité et la gouvernance de ces assets métier qui ne cessent de gagner en valeur.

Cependant, la mise à disposition en externe des API, ainsi que la valeur ainsi générée, soulève une question : est-il possible d'obtenir la même valeur en exposant les API en interne ? L'arrivée à maturité des technologies de gestion des API rend désormais possibles la découverte et la mise en libre-service des sources de données, des services et des applications. L'ensemble des équipes partageant un même domaine d'activité peut aujourd'hui développer des logiciels de manière contrôlée et visible, ce qui permet d'augmenter la productivité des équipes IT et de créer une économie interne basée sur les API.

La valeur de l'économie interne basée sur les API est encore plus importante dans le cadre d'une architecture de microservices, car plus les microservices créent de points de terminaison, plus il est difficile de contrôler la connectivité. Si vous tentez de créer des intégrations point à point entre tous ces points de terminaison, vous courrez à la catastrophe. Dans un environnement hautement distribué comme une architecture de microservices, il est essentiel de mettre au point une stratégie fondée sur les API.

Parmi les stratégies d'API, la connectivité fondée sur les API (API-led Connectivity) compte parmi les plus appréciées par les entreprises pour exposer tous les services (basés sur les microservices ou monolithiques, on-prem ou cloud, etc.). Cette approche d'intégration basée sur les API est une manière raisonnée et globale d'utiliser différents types d'API ciblées et réutilisables pour exposer différents types de services à composer et recomposer pour créer des capacités facilement modifiables. Cliquez ici pour en savoir plus sur la connectivité fondée sur les API (API-led Connectivity).

Plus l'adoption des microservices s'impose, notamment dans les entreprises établies possédant une pile IT legacy, plus il est compliqué d'intégrer tous ces services et d'en tirer de la valeur. C'est pourquoi les entreprises doivent absolument mettre en place une stratégie d'intégration fondée sur les API afin de rendre ces microservices efficaces.

Les API permettent non seulement de combler le fossé entre les microservices et les systèmes traditionnels, mais aussi de faciliter la construction et la gestion des microservices. Grâce à une stratégie fondée sur les API, les entreprises peuvent exposer le rôle des microservices en tant que produits, ce qui génère de la valeur métier en interne comme en externe.

Les API standardisées et productisées permettent aussi de limiter les frais importants liés à la construction d'intégrations point à point entre les systèmes legacy et les applications SaaS. Cela permet aux entreprises d'activer et de désactiver les microservices en fonction de leurs besoins, sans avoir recours à des quantités infinies de code personnalisé. Les API offrent les avantages des mécanismes standardisés de gestion et de surveillance du trafic, de connexion, d'audit et de sécurité, appliqués de manière homogène dans l'ensemble de l'entreprise tout en conservant l'agilité métier nécessaire.

Ces API bien gérées permettent également la réutilisation et la découverte des microservices. Tandis que les équipes conçoivent des microservices dont un grand nombre de personnes pourra bénéficier, les interfaces API permettent leur découverte. Ces microservices peuvent alors être mis à la disposition d'un public plus large, en interne comme en externe, puis gérés comme une capacité réutilisable.

Comment MuleSoft aide les entreprises à implémenter microservices et API

Afin de faciliter la coexistence des microservices et des API, le déploiement d'une plateforme unifiée et centralisée s'impose. Grâce à elle, vous pouvez non seulement réaliser l'intégration et la gestion, mais aussi bénéficier d'une visibilité totale sur tous les microservices et systèmes legacy de votre entreprise, où qu'ils soient déployés, et permettre leur réutilisation et leur découverte. Avec Anypoint Platform, les microservices passent du désordre le plus total à un ensemble d'assets gérables pouvant être composés et recomposés en fonction des besoins de votre entreprise.

Voilà ce dont Anypoint Platform, plateforme de connectivité unifiée et centralisée, est capable grâce à la connectivité fondée sur les API (API-led Connectivity). Anypoint Platform permet la découverte et la réutilisation des assets IT en offrant aux équipes de chaque segment d'activité, et plus généralement aux équipes IT, un accès en libre-service à des assets réutilisables. Ainsi, les équipes sont en mesure de livrer leurs propres projets d'intégration plus rapidement et en toute sécurité grâce à la gouvernance du service IT central.

Des groupes comme Spotify utilisent aujourd'hui les API et les microservices pour favoriser la rationalisation de leurs processus métier et renforcer l'agilité et la réactivité de leur entreprise. Cette approche est de plus en plus utilisée, par exemple chez Unilever, flydubai et même au sein de grands établissements bancaires. Unilever a notamment construit plus de 80 microservices pour connecter ses applications e-commerce et ses systèmes legacy partout dans le monde. En associant son architecture de microservices à une approche de connectivité fondée sur les API, cette entreprise de produits de grande consommation a réduit ses délais de développement et déployé des applications 3 à 4 fois plus rapidement.