Plan du cours
Introduction aux systèmes distribués
- Qu'est-ce qu'un système distribué ?
- Défis courants : latence, cohérence, disponibilité
- Aperçu des composants du système et des modèles de communication
Principes d'évolutivité
- Mise à l'échelle verticale versus horizontale
- Équilibrage de charge et élasticité
- Mise à l'échelle du stockage, du calcul et des Entrées/Sorties
Modèles architecturaux
- Architectures client-serveur et multi-tiers
- Architectures orientées services et microservices
- Architecture orientée événements et files de messages
Théorème CAP et modèles de cohérence
- Explication du théorème CAP
- Cohérence forte versus cohérence éventuelle
- Choisir entre cohérence et disponibilité
Stratégies de distribution et de stockage des données
- Partitionnement et fragmentation (sharding)
- Stratégies de réplication et lectures/écritures par quorum
- Bases de données distribuées et magasins de clés-valeurs
Communication et coordination dans les systèmes distribués
- REST, gRPC, courtiers de messages (par exemple, Kafka, RabbitMQ)
- Élection du leader et consensus distribué
- Utilisation de Zookeeper ou etcd pour la coordination
Tolérance aux pannes et fiabilité
- Concevoir pour les pannes et la dégradation gracieuse
- Mécanismes de relais, délais d'expiration et coupe-circuits (circuit breakers)
- Surveillance, observabilité et ingénierie du chaos
Pratiques modernes de mise en œuvre cloud-natif
- Conteneurs, orchestration et Kubernetes
- Sans état et immuabilité
- Meilleures pratiques pour la sécurité des systèmes distribués
Résumé et prochaines étapes
Pré requis
- Compréhension des concepts de base des réseaux et de la conception de systèmes
- Expérience avec les pratiques générales de développement logiciel
- Une connaissance préalable de l'informatique en nuage et de la conception d'API est utile
Audience cible
- Architectes logiciels et chefs techniques
- Ingénieurs backend et professionnels DevOps
- Concepteurs de systèmes créant des applications cloud évolutives
Nos clients témoignent (3)
Projet préparé pour commencer à travailler dès le début sans perdre de temps à configurer des fichiers inutiles pour les exercices. Disposition à répondre à toutes les questions des participants.
Robert Walczak - Hitachi Energy
Formation - Systems Modeling with SysML and Enterprise Architect (EA)
Traduction automatique
découvrir le potentiel de l'outil
wassim - Collins Aerospace
Formation - SysML par l'exemple avec Cameo Systems Modeler
Faites des exercices dans EA.
Pawel - Krajowa Szkola Skarbowosci
Formation - UML in Enterprise Architect (workshops)
Traduction automatique