fr en
Retourner en haut

Service discovery

Présentation

 

La notion de découverte est une problématique qui revient d’actualité avec l’essor des microservices. En effet, avoir un grand nombre de microservices impliquent une complexification de la configuration de ceux-ci notamment lorsqu’ils interagissent entre eux. C’est le cas de services « mashup », services créés par composition d’autres services, qu’il faut donc savoir adresser. Cela se fait traditionnellement par configuration mais cette méthode atteint ses limites avec la multiplication des services.

On va donc s’appuyer sur un service d’annuaire centralisé qui saura résoudre la question : comment atteindre les services dont j’ai besoin ?

 

 

Figure 12 – Mise en place d’une API Gateway capable de gérer la découverte des microservices sous-jacents 

 

Ce service d’annuaire peut être porté par différents types de solution dont un API Manager.

Un API Manager est une application qui se place en coupure entre une application cliente et l’implémentation de l’API afin d’en contrôler l’accès. Il contient donc les informations d’adresse nécessaire pour joindre l’implémentation de l’API ainsi que des metadata décrivant cette API.

REX

L’association entre le microservice et l’API Manager de Mulesoft est une fonctionnalité qui s’appelle « autodiscovery ». Lors du démarrage d’une instance de l’API, celle-ci s’enregistre auprès de l’API Manager. Ce dernier n’a plus qu’à router les appels qu’il reçoit vers l’une des instances enregistrées. Lorsqu’une une nouvelle instance est déployée, celle-ci s’ajoute à la liste connue. L’API Manager peut désormais répartir la charge entre les API autodéclarées.

10 Design Patterns