Plan du cours
Introduction
- Architecture système et de services, PaaS et conception native du cloud
Aperçu de l'architecture des systèmes monolithiques
- Exécution de l'intégralité des fonctionnalités d'une application monolithique dans un seul processus
- Extensibilité par réplication sur plusieurs serveurs
- Protocoles utilisés dans les systèmes monolithiques : EAI, CORBA, etc.
Aperçu des services web
- Architecture orientée services (SOA) et architecture de microservices
Architecture orientée services (SOA)
- Avantages et coûts de la SOA
- Succès et échecs dans la mise en œuvre de la SOA
- Messagerie et ESB
- Infrastructure et outils supportant la SOA
Comment les microservices implémentent les concepts de services web
- Faire une seule chose et la faire bien
- DevOps
- Déploiement et livraison continus (Intégration continue, processus de construction continue, etc.)
- Protocoles légers
Protocoles et standards des microservices
- HTTP, JMS, AMQP, Websockets, JSON, etc.
Frameworks de développement pour la construction de microservices
- Frameworks basés sur Java (Spring Cloud)
- Frameworks basés sur JavaScript (Seneca)
Décomposition d'une application monolithique
- Développement d'applications déployables indépendamment
- Organisation des applications de microservices autour des capacités métier
- Étude de cas : Migration d'une application monolithique vers trois microservices essentiels
Mise en place d'un environnement de développement Spring Cloud
- Configuration de Docker et de Docker Compose
- Définition des variables d'environnement
Aperçu de Spring Cloud et de Spring Boot
- Sous-projets de Spring Cloud : Config Server & Bus, Eureka, Ribbon, Feign et Hystrix
- Spring Boot
Création d'une application Spring Boot
Gestion centralisée et versionnée de la configuration avec Spring Cloud Config
Mises à jour dynamiques de la configuration avec Spring Cloud Bus
Découverte de services avec Eureka
Équilibrage de charge avec Ribbon
Application des disjoncteurs avec Hystrix
Clients REST déclaratifs avec Feign
Travail avec la passerelle d'API
Sécurisation d'une application de microservices
Traçage des microservices pour identifier les latences
Déploiement des microservices
- Conteneurs (Docker, K8N, LXC, etc...)
- Gestion de la configuration (Ansible, etc...)
- Découverte de services
- Surveillance et gestion des microservices
- Infrastructure pour microservices
Cloud et extensibilité automatique des microservices
- Redondance et basculement des microservices
- Extensibilité des performances pour les microservices
- Extensibilité automatique
- Mise en œuvre de microservices sur OpenStack, AWS et d'autres plateformes cloud
Résolution des problèmes courants des applications distribuées
- Complexité de l'écosystème
- Performance du réseau
- Sécurité
- Déploiement
- Tests
- Nano-services
Considérations finales pour la construction de systèmes prêts pour la production
- Rendre le système accessible aux débutants
- Rendre le système complet afin qu'il puisse servir de fondation aux applications d'entreprise
Résumé et conclusion
Pré requis
- Connaissance des concepts d'ingénierie logicielle et système
- Expérience en développement Java
- Expérience avec le framework Spring
Public cible
- Développeurs Java souhaitant construire et déployer rapidement des microservices
- Architectes système désireux de mettre en œuvre une architecture de microservices
Nos clients témoignent (4)
découvrir le potentiel de l'outil
wassim - Collins Aerospace
Formation - SysML par l'exemple avec Cameo Systems Modeler
L'adaptation de la formation aux besoins des participants.
Michel - Thales Group
Formation - Systems Modeling with SysML and Enterprise Architect (EA)
Faites des exercices dans EA.
Pawel - Krajowa Szkola Skarbowosci
Formation - UML in Enterprise Architect (workshops)
Traduction automatique
Les pratiques
Ivan - si
Formation - Spring Cloud for Microservices
Traduction automatique