
Cours de conception de systèmes
Maîtrisez les compétences dont les ingénieurs ont besoin pour concevoir des systèmes de grande envergure et de qualité professionnelle à partir de zéro. Ce cours couvre tout, des bases de données distribuées et des stratégies de mise en cache aux microservices et à la tolérance aux pannes. Que vous vous prépariez à un poste d'ingénieur senior ou que vous souhaitiez perfectionner vos compétences en architecture, il s'agit de la ressource la plus complète en matière de conception de systèmes disponible.
Ce que vous allez apprendre:
Vous apprendrez à recueillir les exigences, à estimer la charge système et à traduire ces deux éléments en décisions architecturales concrètes. Le cours couvre les protocoles réseau, la conception d'API, le passage à l'échelle des bases de données et les modèles de mise en cache utilisés dans les entreprises traitant des millions de requêtes par jour. Vous étudierez les défis des systèmes distribués, notamment la réplication, le consensus et la tolérance aux pannes. La décomposition en microservices, la découverte de services et la gestion des données distribuées sont abordées en profondeur. Des chapitres supplémentaires traitent de la sécurité, de l'observabilité, de l'infrastructure cloud-native et des pipelines à forte intensité de données. À la fin, vous serez en mesure de concevoir des systèmes complets tels qu'un raccourcisseur d'URL, une plateforme de messagerie en temps réel et un service de stockage de fichiers distribué.
Comment vous étudiez de façon pratique Cours de conception de systèmes
Comment vous pratiquez Cours de conception de systèmes
Pour vous, entreprise, qui souhaitez former votre équipe
Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre activité et aux besoins spécifiques de votre entreprise.
Contenu du cours
8 Chapitres • 38 LeçonsDurée entre 4 et 360 heures (vous décidez)
Chapitre 1MasquerCacher les détailsVoir les détailsFondamentaux de la conception de systèmes
Fondamentaux de la conception de systèmes
Leçon 1 • Recueil et cadrage des exigences
Couvre les techniques d'extraction et de priorisation des exigences avant la conception. Établit le lien entre un cadrage clair et de meilleures décisions architecturales.
Leçon 2 • Estimation par calculs approximatifs
Enseigne l'estimation quantitative rapide de la charge, du stockage et de la bande passante. Ancre les décisions de conception dans des chiffres réalistes dès le départ.
Leçon 3 • Qu'est-ce que la conception de systèmes ?
Définit la conception de systèmes comme le processus de définition de l'architecture, des composants et du flux de données. Établit le vocabulaire utilisé tout au long du cours.
Leçon 4 • Objectifs fondamentaux de conception et compromis
Présente la fiabilité, la disponibilité, la passation à l'échelle et la maintenabilité comme objectifs principaux. Montre comment l'optimisation d'un objectif en contraint souvent un autre.
Chapitre 2MasquerCacher les détailsVoir les détailsNotions de base sur la mise en réseau et la communication
Notions de base sur la mise en réseau et la communication
Leçon 1 • Communication synchrone vs. asynchrone
Compare les modèles requête-réponse et ceux pilotés par les événements. Établit le lien entre le style de communication et les compromis en matière de latence et de couplage.
Leçon 2 • Fondamentaux d'Internet et des protocoles
Passe en revue TCP/IP, DNS et HTTP comme la colonne vertébrale de la communication distribuée. Fournit le contexte pour les choix de conception de plus haut niveau.
Leçon 3 • Modèles de conception d'API
Compare REST, GraphQL et RPC comme principaux paradigmes d'API. Guide la sélection en fonction des besoins des clients et des contraintes du système.
Leçon 4 • Interrogation longue, WebSockets et streaming
Couvre les techniques de communication en temps réel pour la distribution de données de type push. Prépare les étudiants à concevoir des fonctionnalités de mise à jour en direct.
Chapitre 3MasquerCacher les détailsVoir les détailsStockage de données et conception de bases de données
Stockage de données et conception de bases de données
Leçon 1 • Catégories de bases de données NoSQL
Passe en revue les magasins clé-valeur, document, famille de colonnes et de graphes. Associe chaque catégorie à des cas d'usage appropriés.
Leçon 2 • Sélection du moteur de stockage
Fournit un cadre décisionnel pour choisir entre des magasins relationnels, NoSQL et spécialisés. Renforce le raisonnement sur les compromis abordé dans les sections précédentes.
Leçon 3 • Fondamentaux des bases de données relationnelles
Couvre les propriétés ACID, la normalisation et l'indexation dans les bases de données relationnelles. Ancre les comparaisons ultérieures avec les alternatives NoSQL.
Leçon 4 • Théorème CAP et modèles de cohérence
Explique le théorème CAP et ses implications pratiques pour le stockage distribué. Introduit le spectre de la cohérence, de la cohérence éventuelle à la cohérence forte.
Leçon 5 • Stratégies pour la passation à l'échelle des bases de données
Enseigne la réplication, le partitionnement horizontal et le partitionnement pour gérer des volumes de données croissants. Associe chaque stratégie à des goulets d'étranglement de passation à l'échelle spécifiques.
Chapitre 4MasquerCacher les détailsVoir les détailsMise en cache et optimisation des performances
Mise en cache et optimisation des performances
Leçon 1 • Modèles de cohérence du cache
Examine les modèles de cache-aside, write-through, write-behind et read-through. Associe chaque modèle à des compromis en matière de cohérence et de performance.
Leçon 2 • Couches de mise en cache et placement
Couvre les caches côté client, CDN, applicatif et de base de données. Montre comment le placement de la couche affecte la latence et la cohérence.
Leçon 3 • Fondamentaux de la mise en cache
Définit les hits, misses, politiques d'éviction et TTL du cache. Établit l'impact de la mise en cache sur les performances dans les systèmes distribués.
Leçon 4 • Défis avancés de la mise en cache
Aborde les problèmes de thundering herd, de cache stampede et d'empoisonnement du cache. Prépare les étudiants à concevoir des solutions de mise en cache résilientes.
Chapitre 5MasquerCacher les détailsVoir les détailsPassation à l'échelle et répartition de la charge
Passation à l'échelle et répartition de la charge
Leçon 1 • Passage à l'échelle vertical vs. horizontal
Compare le passage à l'échelle du matériel avec le passage à l'échelle par instances. Établit quand chaque approche est appropriée et ses implications de coût.
Leçon 2 • Mise à l'échelle automatique et élasticité
Enseigne la mise à l'échelle automatique réactive et prédictive basée sur des métriques. Prépare les étudiants à concevoir des architectures élastiques rentables.
Leçon 3 • Limitation du débit et régulation
Introduit les algorithmes du seau à jetons, du seau qui fuit et de la fenêtre glissante. Protège les ressources du système contre la surcharge et les abus.
Leçon 4 • Stratégies d'équilibrage de charge
Couvre les algorithmes round-robin, moindre connexions et hachage cohérent. Établit le lien entre le choix de l'algorithme, les modèles de trafic et les exigences de session.
Leçon 5 • Réseaux de diffusion de contenu
Explique l'architecture CDN, la mise en cache périphérique et le déchargement de l'origine. Montre comment les CDN réduisent la latence pour les utilisateurs géographiquement dispersés.
Chapitre 6MasquerCacher les détailsVoir les détailsSystèmes distribués et fiabilité
Systèmes distribués et fiabilité
Leçon 1 • Reprise après sinistre et sauvegarde
Couvre le RTO, le RPO, les stratégies de sauvegarde et le basculement multi-région. Prépare les étudiants à concevoir des systèmes qui survivent à des défaillances catastrophiques.
Leçon 2 • Réplication et consensus
Explique la réplication leader-suiveur et les algorithmes de consensus pour l'accord. Établit le lien entre la stratégie de réplication et les objectifs de cohérence et de disponibilité.
Leçon 3 • Idempotence et sémantique de traitement unique garanti
Aborde les requêtes en double et les garanties de distribution de messages. Assure l'exactitude en présence de tentatives et de défaillances réseau.
Leçon 4 • Modèles de tolérance aux pannes
Enseigne les disjoncteurs, les tentatives, les délais d'attente et les cloisons étanches. Équipe les étudiants pour prévenir les défaillances en cascade dans les services distribués.
Leçon 5 • Défis des systèmes distribués
Couvre les partitions réseau, le décalage d'horloge et les défaillances partielles comme problèmes inhérents au distribué. Définit des attentes réalistes sur le comportement du système.
Chapitre 7MasquerCacher les détailsVoir les détailsArchitecture de microservices et de services
Architecture de microservices et de services
Leçon 1 • Découverte et enregistrement de services
Explique les modèles de découverte côté client et côté serveur pour la localisation dynamique des services. Permet un routage résilient dans des environnements élastiques.
Leçon 2 • Principes de décomposition des services
Applique la conception pilotée par le domaine et les contextes délimités pour définir les limites des services. Réduit le couplage tout en maximisant la cohésion.
Leçon 3 • Gestion des données distribuées
Aborde le modèle Saga, la validation en deux phases et la cohérence éventuelle entre les services. Résout les défis des transactions distribuées.
Leçon 4 • Communication inter-services
Couvre la communication synchrone REST/gRPC et la communication asynchrone pilotée par les événements entre les services. Établit le lien avec les compromis en matière de latence et de couplage.
Leçon 5 • Monolithe vs. microservices
Compare les architectures monolithiques et microservices en termes de complexité, déploiement et passage à l'échelle. Guide les décisions de migration.
Chapitre 8MasquerCacher les détailsVoir les détailsPratique de conception de systèmes de bout en bout
Pratique de conception de systèmes de bout en bout
Leçon 1 • Conception d'un système de chat en temps réel
Construit une architecture de chat utilisant WebSockets, files d'attente de messages et détection de présence. Synthétise les chapitres sur la mise en réseau, le stockage et la passation à l'échelle.
Leçon 2 • Conception d'un raccourcisseur d'URL
Parcourt la conception complète d'un raccourcisseur d'URL couvrant le hachage, le stockage et la redirection. Renforce l'estimation, la mise en cache et la sélection de la base de données.
Leçon 3 • Cadre d'entretien de conception
Fournit une approche structurée pour cadrer, estimer et présenter des conceptions de systèmes. Renforce la confiance et la cohérence lors des sessions de conception.
Leçon 4 • Conception d'un système de stockage de fichiers distribué
Conçoit un système de stockage de fichiers à grande échelle avec fragmentation, métadonnées et réplication. Applique les concepts de systèmes distribués au stockage d'objets binaires.
Leçon 5 • Conception d'un système de fil d'actualité social
Couvre la diffusion à l'écriture vs. la diffusion à la lecture pour la génération de fils d'actualité. Intègre les sous-systèmes de mise en cache, de classement et de notification.
Leçon 6 • Revue et itération architecturale
Enseigne la critique structurée de conceptions existantes pour trouver et corriger les faiblesses. Développe l'habitude du raffinement itératif dans la pratique professionnelle.
Votre certificat valide de réussite
Ce cours est fait pour vous :
Ingénieurs logiciels de niveau intermédiaire : prêts à évoluer au-delà du travail sur les fonctionnalités vers l'architecture.
Développeurs backend : souhaitant comprendre comment leurs services s'intègrent à grande échelle.
Responsables techniques : ayant besoin d'une profondeur technique pour évaluer et orienter les décisions de conception.
Diplômés en informatique : entrant dans le secteur et visant des postes de niveau senior.
Personnes en reconversion professionnelle issues de domaines connexes : apportant leur expertise métier et recherchant une maîtrise des systèmes.
Développeurs freelances : souhaitant proposer et réaliser des solutions clients plus complexes et évolutives.
Ce que disent nos apprenants
Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...

J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.

J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !

La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.

Formations principales
FAQ
Qui est Dedika ?
Le certificat est-il valable en France ?
Les cours sont-ils gratuits ?
Quelle est la charge de travail des cours ?
Comment sont les cours ?
Comment fonctionnent les cours ?
Quelle est la durée des cours ?
Quel est le coût ou le prix des cours ?
Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?
Cours PDF




















