Aller au contenu
Nicolas Perron
English
Retour au blog
Architecture

Le monolithe modulaire, ce méconnu

Entre le monolithe classique et les microservices existe une troisième voie souvent idéale : le monolithe modulaire, aussi appelé « majestic monolith ».

1 min de lecture

On connaît les microservices et les monolithes. Mais sait-on ce qu’est un monolithe modulaire, parfois appelé majestic monolith ? Chaque architecture a ses forces et ses faiblesses, et celle-ci pourrait bien être la solution idéale pour bon nombre de projets.

Trois approches, trois compromis

Le monolithe est une grande application où les fonctions s’appellent à l’intérieur du même programme. Ses atouts : simplicité, facilité de développement et coûts souvent inférieurs à ceux des microservices.

Les microservices sont de petits programmes indépendants, appelables séparément. Ils offrent indépendance, évolutivité, facilité de mise à jour et réutilisabilité — mais à un coût plus élevé.

Le monolithe modulaire est un hybride : il est structuré comme si chaque module était un microservice, tout en restant dans un seul programme.

Le meilleur des deux mondes

Cette approche combine un développement à moindre coût et la possibilité de transformer facilement un module en microservice plus tard, si le besoin se présente. On garde la simplicité du monolithe sans se fermer la porte à l’évolution.

Avant de découper d’emblée un système en microservices, il vaut souvent la peine de se demander si un monolithe bien modulaire ne répondrait pas mieux au besoin réel.