Cuisine italienne et architecture logicielle

Je vous entends demander, perplexes, “Quel rapport?” C’est très simple! Petite illustration :

Dans les années 90, c’est la culture du copier-coller qui prévaut, cela donne un enchevêtrement parfaitement illustré par le plat de spaghetti : lorsque vous enlevez un spaghetti du plat, vous ne savez pas quelles répercussions cela a sur votre plat : il peut simplement bouger, s’affaisser, ou même s’écrouler. 

Quoi qu’il en soit votre action somme toute bénigne aura des conséquences non prévisibles pouvant aller jusqu’à l’effondrement du système.

Dans les années 2000, on est plus sur le monolithe en couches version lasagnes : on empile, c’est plus stable, mais enlever une couche va impacter l’ensemble du plat. Pas l’idéal.

Enfin, les années 2010 voient arriver l’aire du microservice, notre petit ravioli. Un ravioli est un petit plat à lui tout seul, il est autonome, bien que lié aux autres par la sauce, en revanche, si vous l’enlevez de l’assiette, votre plat reste aussi savoureux et présentable, juste un peu moins copieux.

C’est là tout l’intérêt du microservice, la stabilité : si l’un des éléments est défaillant ou doit être remplacé, les autres éléments du système vont continuer à fonctionner indépendamment. 

Et après? Pourquoi pas une architecture façon pizza, avec un socle et des éléments customisables et indépendants? L’avenir nous le dira!

Source : https://medium.com/@benorama/the-evolution-of-software-architecture-bd6ea674c477

Autres articles …