Dans cette présentation, nous explorerons les fondamentaux de l'architecture des microservices d'un point de vue théorique et pratique, en mettant en avant certains défis réels auxquels nous faisons face au quotidien en cherchant une solution d'architecture optimale pour nos clients.
Quand utiliser des microservices ou un monolithe ? Dans un monde où les applications doivent être rapides, évolutives et résilientes, les microservices apparaissent comme une solution clé pour construire des logiciels modernes et efficaces.
Nous ne nous limiterons pas à la théorie et réaliserons une pratique en direct : nous exécuterons des microservices dans nos locaux, avec la JVM et avec Docker+Kubernetes, tout en surveillant le système avec Grafana et Prometheus.
Nous aborderons des sujets essentiels tels que la conception modulaire, les stratégies de déploiement et d'orchestration, la gestion des données distribuées, et des modèles pour garantir évolutivité et résilience. De plus, nous verrons l'importance de l'observabilité : si vous n'avez pas de métriques de votre système, vous êtes aveugle face à tout contretemps.