Une architecture monolithique est un style de conception où l'ensemble d'une application — interface, logique métier et accès aux données — est développé et déployé comme un seul et unique bloc.
C'est le modèle le plus courant pour les applications en début de vie, et souvent le point de départ avant une migration vers les microservices.
Structure typique
┌────────────────────────────────┐
│ APPLICATION │
│ ┌──────────┐ ┌────────────┐ │
│ │ UI │ │ Logique │ │
│ └──────────┘ └────────────┘ │
│ ┌──────────────────────────┐ │
│ │ Base de données │ │
│ └──────────────────────────┘ │
└────────────────────────────────┘
↓ déployé d'un bloc
Avantages et limites
| Avantages | Limites |
|---|---|
| Simple à développer au départ | Un bug peut faire tomber tout le système |
| Facile à tester localement | Difficile à scaler partiellement |
| Pas de latence réseau interne | Déploiements lents et risqués |
| Stack unifiée | Couplage fort entre modules |
À retenir
Le monolithe n'est pas une architecture dépassée — il reste pertinent pour les petites équipes et les produits jeunes. La complexité des microservices se justifie seulement quand les contraintes de scale ou d'organisation l'exigent. Notre analyse : Refactoriser un monolithe en microservices.
