Certaines API destinées aux consommateurs sont si répandues qu’elles sont devenues des noms familiers (pensez à Google Maps et Stripe), mais les API internes sont le véritable moteur de l’économie des API.
Les API internes – par lesquelles nous entendons les API exposées uniquement aux clients et aux développeurs au sein d'une organisation – sont un pilier essentiel des efforts de transformation numérique d'une entreprise. La création d’API internes constitue généralement la première étape du développement de produits et services numériques. En fait, selon la récente enquête d'IDC, APIs – The Determining Agents Between Success or Failure of Digital Business , la prise en charge de l'intégration interne des applications et des produits est l'une des principales priorités des initiatives de développement d'API dans les entreprises.
Pourquoi les API internes sont-elles importantes ? Quels sont les avantages des API internes ? Et surtout, quelle est l’architecture la plus optimale pour les gérer ? Ce blog répond à ces questions pour vous aider à fournir des API internes de manière sécurisée et à grande échelle.
Les API internes déverrouillent les silos de données et construisent des ponts en ouvrant les systèmes back-end disparates d'une organisation à l'utilisation par d'autres développeurs au sein d'un secteur d'activité (LOB). Par exemple, l’organisation marketing d’un fabricant peut avoir besoin de visibilité sur les systèmes utilisés par l’organisation de la chaîne d’approvisionnement pour déterminer s’il faut accorder des remises sur certains produits et modèles afin de cibler le bon segment de marché et de maximiser les revenus.
Comment les API internes éliminent-elles les silos ? Ils fournissent une interface commune qui prend en charge l'échange de données à l'aide de formats standard tels que HTML ou JSON. Il est facile et rapide non seulement de créer une API, mais également d’en utiliser une. Comparez cela avec l’utilisation de connecteurs de bases de données propriétaires et de protocoles d’échange de données obscurs pour récupérer des informations à partir de référentiels de données. En réduisant les frictions, les API améliorent considérablement la productivité. Ces API ne sont pas exposées aux développeurs externes et aux tiers. Le trafic API interne se fait au sein de l’organisation, donc au sein du pare-feu de l’entreprise.
Les API internes accélèrent la mise sur le marché et réduisent le temps et le coût du développement logiciel. Passons en revue les avantages en détail.
Les API internes fournissent une couche d’abstraction facilement utilisable pour connecter différentes parties d’une entreprise et offrent la flexibilité nécessaire pour s’adapter aux exigences changeantes. Plutôt que de créer une pile technologique cloisonnée pour les applications de chaque secteur d’activité, les développeurs de toute l’organisation peuvent s’appuyer sur un pool commun d’API internes pour accéder aux données. Cela élimine les doublons et réduit le temps de développement du logiciel, améliorant ainsi la productivité des développeurs et de l’informatique.
Les API internes favorisent le développement d’un système d’enregistrement qui sert de source faisant autorité pour les éléments de données clés d’une organisation. Pour garantir l’intégrité des données, il doit exister un seul et unique système d’enregistrement pour une information donnée. Si chaque LOB possède ses propres données ou même une version légèrement différente, cela entraîne des divergences et des confusions. Les API internes sont un mécanisme efficace pour accéder à cette source unique de vérité.
L’efficacité se traduit par des économies de coûts – il n’est pas nécessaire de créer des plateformes propriétaires avec de lourdes personnalisations au sein de chaque secteur d’activité. Il n’est pas non plus nécessaire de construire ou d’acheter des connecteurs et des intégrations coûteux qui sont essentiellement des outils ponctuels.
À titre d’exemple, le gouvernement fédéral estonien exploite X-Road, une plateforme d’échange de données qui relie toutes les agences gouvernementales de manière transparente. Les citoyens estoniens n'ont même pas besoin d'avoir leur permis de conduire sur eux, car ces informations peuvent être rapidement récupérées à partir du registre de la population et du registre des véhicules, même si les deux référentiels de données sont distincts. Ce rapport de la Banque mondiale estime de manière prudente qu’en facilitant l’accès à l’information, X-Road a permis au gouvernement et aux citoyens estoniens d’économiser 2,8 millions d’heures-personnes en une seule année (2014).
Passons en revue quelques bonnes pratiques pour la gestion des API internes.
Pour définir, publier, sécuriser, surveiller et analyser efficacement les API internes et externes, vous avez besoin d'une solution de gestion des API . Un portail de développement permettant aux développeurs internes de se renseigner rapidement sur les API publiées est également nécessaire.
Les microservices sont une nouvelle approche architecturale du développement logiciel qui gagne du terrain. De nombreuses entreprises réorganisent leurs applications internes existantes ou en créent de nouvelles en utilisant ce framework. Dans les architectures de microservices, les API sont le moyen de communication entre les clients et l’application basée sur les microservices et entre les microservices qui composent l’application. Lorsqu'un client API demande des ressources à une application back-end, une passerelle API achemine le trafic vers le microservice approprié. La passerelle API authentifie également les appels et applique des limites de débit pour empêcher les attaques qui pourraient survenir si des acteurs externes parviennent à franchir le pare-feu de l'entreprise.
Les microservices sont « plus bavards » que les applications monolithiques, avec des volumes élevés de trafic « est-ouest » entre les microservices. Il est donc très important de choisir une passerelle hautes performances capable de traiter à haut débit (requêtes par seconde) et de fournir des réponses très rapidement. Les demandes des clients génèrent souvent plusieurs appels d'API vers différents microservices. Ainsi, un retard au niveau de la passerelle API pour un seul appel peut potentiellement avoir un effet en cascade et entraîner des latences très élevées.
Bien qu’il existe des solutions cloud de première génération qui offrent une gestion complète du cycle de vie des API, elles ne sont pas adaptées à la gestion des API internes. Étant donné que leurs architectures couplent étroitement le plan de données (la passerelle API qui traite le trafic API) et le plan de contrôle (qui exécute les fonctions de gestion des API), lors de l’exécution, chaque appel d’API interne doit être acheminé via le cloud de la solution de gestion des API. Cela présente deux inconvénients :
Pour des raisons de sécurité, le trafic API interne doit rester derrière le pare-feu de l'entreprise, ce qui empêche le routage des appels vers un cloud externe. Cela est vrai même pour les entreprises qui hébergent des applications et des API dans leurs propres environnements de cloud privé.
NGINX vous aide à gérer vos API internes de plusieurs manières.
L'architecture innovante de la solution de gestion des API NGINX est conçue pour l'évolutivité. NGINX prend en charge la gestion des API distribuées en découplant la passerelle API (NGINX Plus) du logiciel de gestion des API (NGINX Controller [maintenant F5 NGINX Management Suite] ). Il n'y a aucune dépendance d'exécution entre les deux, ce qui garantit que le trafic API est traité sans surcharge inutile telle que des scripts supplémentaires, des appels de base de données ou une autre logique de plan de contrôle.
L'architecture découplée vous offre une flexibilité maximale dans le lieu de déploiement de Controller [NGINX Management Suite] et des passerelles API NGINX Plus : vous pouvez les déployer sur site, dans le cloud public ou même sur plusieurs clouds publics si votre réseau d'entreprise s'étend jusqu'au cloud. Les appels API internes n'ont pas besoin d'être acheminés via un cloud en dehors du réseau d'entreprise, car les passerelles API NGINX Plus qui gèrent le trafic API peuvent être déployées indépendamment derrière le pare-feu de l'entreprise.
Avez-vous des API internes ? Ou envisagez-vous de développer des API internes ? Acheminez-vous vos API internes via le cloud ? Nous aimerions avoir de vos nouvelles dans les commentaires ci-dessous. En attendant, commencez dès aujourd'hui avec un essai gratuit de 30 jours de NGINX Controller [NGINX Management Suite] ou contactez-nous pour discuter de vos cas d'utilisation .
« Cet article de blog peut faire référence à des produits qui ne sont plus disponibles et/ou qui ne sont plus pris en charge. Pour obtenir les informations les plus récentes sur les produits et solutions F5 NGINX disponibles, explorez notre famille de produits NGINX . NGINX fait désormais partie de F5. Tous les liens NGINX.com précédents redirigeront vers un contenu NGINX similaire sur F5.com."