6 idées reçues sur les micro-services à l’épreuve du YAGNI (you Aren’t Gonna Need It)

Ou comment se débarrasser de tout ce qui n’est pas nécessaire pour en finir avec une sur-ingénierie souvent complexe et trop coûteuse. 

 

  1. Les micro-services vous aident à poser les limites. Faux. Ce sont les fonctionnalités business qui délimitent les micro-services. Les micro-services reposent bien entendu sur des choix technologiques mais ce ne sont pas les technologies qui définissent les micro-services. On part de la problématique métier et du service attendu sans se soucier des technologies qui vont être utilisées. D’itération en itération, on trouve une réponse à un problème réel qui sera alors traduite en micro services.
  2. Les micro-services vous permettent d’avoir un système modulaire. Certes, les micro-services permettent de visualiser la séparation entre les concepts business mais pas de la franchir. Il existe des solutions pour modifier facilement les modules mais parfois, le refactoring de la structure des modules peut se révéler compliqué.
  3. Les micro-services rendent votre système performant. L’un des principaux intérêts des micro-services est de pouvoir modifier ou adapter chaque service de manière indépendante et autonome… mais cela a un coût car cela suppose de chaque service fonctionne de manière séparée, avec une infrastructure qui supporte chaque processus distinct. Aujourd’hui, les cloud providers vous offrent des solutions efficaces mais faire appel à des services à distance est toujours plus coûteux qu’une communication entre des processus.
  4. Les micro-services sont moins chers à exploiter. C’est toute l’approche du Serverless Computing dont il est question… Bien que cette approche soit plébiscitée, car elle est plus économique en termes de développement et d’exploitation, dans les faits, les réels cas d’usage sont limités. En effet, une application qui fonctionne dans le cloud de la même manière qu’elle le faisait dans votre propre datawarehouse, risque de vous coûter au final bien plus cher (notamment dans les solutions dites Lift&Shift). Les micro-services vous permettent effectivement d’économiser en développement … mais pas en exploitation. L’essentiel reste, qu’à la fin des comptes, la facture reste tout de même plus réduite avec les micro-services (TCO).
  5. Les micro-services sont plus faciles à développer. C’est surtout qu’une grande partie de la complexité est déportée vers les Ops ! Ils ne sont donc pas plus faciles à développer puisqu’ils ne sont pas conçus ni mis en œuvre de la même manière. Les micro-services nécessitent non seulement une approche agile et des équipes par nature DevOps. Sans équipe DevOps, pas de mircro-services en somme !
  6. Qui dit micro, dit petits services. Et qui dit petit dit facile ? Faux également. Micro n’a rien à voir avec la taille. Micro s’entend davantage dans le sens minimaliste du terme, c’est-à-dire un service avec sa responsabilité et son API… par contre sa mise en œuvre peut être plus ou moins complexe. C’est le contexte défini (la fonctionnalité et le service délivré attendu) qui définit la « taille » du micro-service car le développement est piloté par le domaine.

Sources :

 

Des architectures monolithiques vers les micro-services, le chemin vers une nouvelle normalité

https://www.journaldunet.com/web-tech/cloud/1496179-des-architectures-monolithiques-aux-micro-services-le-chemin-vers-une-nouvelle-normalite/ 

You Aren’t Gonna Need micro-services : https://ttulka.medium.com/you-arent-gonna-need-microservices-ef22498bd3c0

les microservices chez Saint-Gobain : https://harington.fr/saint-gobain

Microservices, se lancer ! https://harington.fr/nos-offres/microservices

 

En savoir plus

Réaliser un bilan carbone IT, les DSI à l’ère de la responsabilité environnementale

Le numérique responsable n’est plus une option, mais une nécessité. Découvrez comment réaliser un bilan carbone IT avec Harington Impact pour réduire votre empreinte environnementale tout en optimisant vos coûts et en répondant aux exigences réglementaires croissantes.

Lire

L’avenir du numérique durable ? Écoconception logicielle avec Harington Impact.

Les data centers consomment environ 2 % de l’électricité mondiale, et le numérique représente 4 % des émissions mondiales de gaz à effet de serre. Harington Impact propose une plateforme d’écoconception logicielle pour aider les DSI à réduire l’empreinte environnementale de leurs applications.

Lire

Les DSI face à l’urgence climatique : comment l’écoconception peut faire la différence

L’écoconception logicielle est un enjeu crucial pour les entreprises souhaitant réduire leur empreinte carbone. Apprenez comment Harington Impact aide les DSI à intégrer des pratiques de développement durable dans leurs projets IT.

Lire