Intégration tierce isolée
Encapsuler Stripe, Postes Canada ou un ERP derrière une API interne stable.
Un microservice est un composant logiciel autonome qui implémente une capacité métier précise — par exemple « envoyer une facture » ou « calculer un tarif » — et qui s'exécute comme un processus séparé. Il expose une interface (souvent une API HTTP) et possède ses propres données ou schéma. Les autres services l'appellent sans accéder à sa base directement.
En une phrase
Un microservice, c'est une brique métier indépendante qu'on peut déployer et faire évoluer sans tout casser.
À retenir
Fiche du terme
Le préfixe « micro » prête à confusion : l'important est l'autonomie de déploiement et la responsabilité claire. Un service « commandes » peut contenir plusieurs milliers de lignes s'il reste cohérent métier et testable seul.
Les anti-patterns classiques : deux services qui lisent la même table SQL (couplage caché), chaînes d'appels synchrones profondes (latence explosive), ou découpage par couche technique (« service base de données », « service UI ») qui recrée un monolithe distribué.
Dans un contexte québécois de PME qui monte en charge, un microservice utile est souvent le premier extrait du monolithe — paiement Stripe, génération de documents, envoi de courriels — là où l'isolation apporte un gain mesurable sans refondre tout le produit.
Formuler en verbe métier : « notifier », « tarifer », « synchroniser inventaire ».
Seul ce service modifie ses enregistrements ; les autres passent par son API.
OpenAPI ou contrat équivalent, codes d'erreur clairs, versionnement dès le départ.
Santé (/health), métriques, logs structurés avec identifiant de corrélation.
Une application de location d'équipement garde un monolithe pour les réservations, mais extrait un microservice « disponibilités ». Ce service agrège le calendrier et les retours atelier ; il répond en millisecondes aux recherches du site. Quand la logique de maintenance change, seule cette brique est redéployée — les contrats de location dans le monolithe restent intacts.
Encapsuler Stripe, Postes Canada ou un ERP derrière une API interne stable.
Génération PDF, redimensionnement d'images, transcodage vidéo en file d'attente.
Segmenter PII ou paiements pour durcir l'accès et simplifier les audits.
Tester un moteur de recommandation sans risquer le cœur transactionnel.
| Microservice | Module dans un monolithe | |
|---|---|---|
| Déploiement | Processus ou conteneur séparé | Même binaire que le reste |
| Données | Store dédié ou schéma privé | Tables partagées, transactions locales |
| Communication | HTTP, messages, gRPC | Appels de fonctions in-process |
| Quand choisir | Scale ou équipe indépendante requis | Cohésion forte, faible charge |
Parler de « microservice » dans un devis doit signifier une brique livrable et mesurable, pas une étiquette marketing. Chaque service ajoute de l'exploitation : surveillance, mises à jour, sécurité. L'investissement se justifie quand l'isolation réduit un risque réel (panne, conformité, charge) que le monolithe ne peut plus absorber.
En général non : il expose une API. L'UI reste dans le front-end ou un autre service « gateway ».
REST convient aux requêtes/réponses immédiates. Files de messages (RabbitMQ, SQS) mieux pour pics, retry et découplage temporel.
Non — c'est un anti-pattern. Découper par capacité métier, pas par table.
Vous envisagez d'extraire une brique de votre application actuelle ?
Évaluer le découpage