Microservices

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

En informatique, les microservices sont un style d'architecture logicielle à partir duquel un ensemble complexe d'applications est décomposé en plusieurs processus indépendants et faiblement couplés, souvent spécialisés dans une seule tâche. Les processus indépendants communiquent les uns avec les autres en utilisant des API langage-agnostiques.

Des API REST sont souvent employées pour relier chaque microservice aux autres. Un avantage avancé est que lors d'un besoin critique en une ressource, seul le microservice lié sera augmenté, contrairement à la totalité de l'application dans une architecture classique, par exemple une architecture trois tiers. Cependant, le coût de mise en place, en raison des compétences requises, est parfois plus élevé.

Détails[modifier | modifier le code]

  • Les services individuels sont simples à remplacer
  • Les services sont conçus pour leur utilité spécifique (par exemple la facturation, la chaîne logistique, l'interface...)
  • L'architecture est plus symétrique que hiérarchique (passage d'une architecture client-serveur à une architecture de plusieurs entités communicantes)
  • L'architecture facilite le déploiement continu du code

Philosophie[modifier | modifier le code]

La philosophie de l'architecture microservices s'inspire en grande partie de la philosophie UNIX, qui prône « ne faire qu'une seule chose, et la faire bien ». Elle est décrite comme suit[1],[2],[3] :

  • Les services sont petits, et conçus pour remplir une seule fonction.
  • L'organisation du projet doit prendre en compte l'automatisation, le déploiement et les tests.
  • Chaque service est élastique, résilient, composable, minimal et complet[3].

Utilisateurs[modifier | modifier le code]

Notes et références[modifier | modifier le code]

Sources[modifier | modifier le code]