Qu’est ce que les Micro Services

Alors que le buzz du moment se concentre autour du Cloud et la Big Data, nous avons, chez Captain Dash, la certitude que les Micro Services sont la vraie révolution qui changera durablement la manière dont nous pensons et nous vivons l’informatique.

Retour vers le futur….

Au fil des années, l’informatique s’est formidablement complexifiée. A force de vouloir tout faire, les applications sont devenues des machines à produire de l’inefficacité.

Dans un monde fondé sur la rapidité, l’agilité et l’adaptabilité, les architectures monolithiques deviennent des Mammouths, coûteuses et difficiles à faire évoluer. Le moindre déploiement se chiffre en années hommes.

Alors que vous avez investi des milliards dans votre architecture informatique, vous êtes à la merci d’un nouvel entrant qui sera capable de proposer un service incroyablement moins coûteux et offrant une expérience totalement révolutionnaire à ses utilisateurs. Simplement parce que vous passez plus de temps à maintenir votre passif technologique qu’à innover.

Face à l’informatique monolithique, les Micro Services sont une formidable cure de jouvence. Une manière de revenir aux fondamentaux de l’informatique, avec un code simple, facile à déployer et à maintenir.

Au lieu de concevoir une mega architecture ou une mega application qui devra tout gérer et tout faire, on conçoit des applications uniques, indépendantes et composées de petit services légers, faciles à déployer et à maintenir. Chacune de ces applications, qui sont en fait des Micro Services, sont connectées via des API. Ainsi on abolit la complexité en connectant simplement entre eux une série de Micro Services au lieu de créer et maintenir un système complexe et hyper centralisé.

Les points clés de définition des Micro Services :

  • ils possèdent une et une seule fonction
  • ils sont librement couplés - puisque physiquement indépendants
  • compte tenu de cette indépendance, il est possible d’utiliser pour ces services n’importe quel langage ou outil de programmation
  • ils sont centrés “produit” plus que “projet”
  • équipes centralisées (responsables du cycle du produit dans son ensemble), et données décentralisées
  • la simplification de la phase de tests et l’accélération de la phase de déploiement permettent d’assurer des livraisons en continu
  • ils sont très évolutifs car seules les parties intéressantes qui les constituent doivent faire l’objet d’une duplication

microservices3

Les Micro Services, le botox des systèmes d’information

La beauté et le potentiel révolutionnaire des Micro Services sont qu’ils n’obligent pas à reconstruire entièrement une architecture informatique. Bien au contraire. Netflix comme Amazon ont initié l’utilisation des Micro Services conjointement à leur structure Monolithique préexistante.

Les Micro Services sont flexibles. Et c’est là qu’ils deviennent réellement révolutionnaires. Ils peuvent donc être rattachés à une architecture monolithique.

Ils permettent par exemple d’extraire facilement des données, pour faire des calculs ou proposer des services innovants à des utilisateurs sans avoir à impacter votre Monolithe (définition que nous donnons à une architecture complexe, unique et lourde).

Les Micro Services permettent ainsi de transformer un passif informatique en un formidable actif en le rendant beaucoup plus agile.

Face aux jeunes loups, les Micro Services sont définitivement le botox des systèmes informatiques.

Note : Captain Dash commence une nouvelle série d’articles sur les Micro Services. Certains sont techniques, d’autres moins. Notre objectif est de considérer cette forme d’architecture que nous utilisons et de la rendre compréhensible pour le commun des mortels. Ces articles seront publiés tous les dimanches. Donc suivez-les sur Twitter ou abonnez-vous à notre blog et recevez votre mise à jour hebdomadaire sur cette fabuleuse architecture qui est en train de changer la façon de faire des affaires !