L'architecture microservices est un style architectural qui structure une application comme une collection de services faiblement couplés.
Caractéristiques :
- Indépendants : Chaque service = une fonctionnalité
- Déployables séparément
- Communication via APIs (REST, gRPC)
- ️ Base de données par service
- Équipes autonomes
Microservices vs Monolithe :
- Monolithe : Tout dans une app
- Microservices : ️ Plusieurs petites apps
Défis :
- Complexité du réseau
- Debugging distribué
- Monitoring avancé nécessaire
Stack technique :
- Docker + Kubernetes
- API Gateway (Kong, Kong)
- Service Mesh (Istio)
Idéal pour grandes équipes et applications complexes