Choisissez votre langue
Cours de conception de systèmes
Plus de 2 millions d'étudiants dans le monde

Cours de conception de systèmes

4

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.

Dedika pour les entreprises

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.

Cliquez ici

Contenu du cours

8 Chapitres • 38 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

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 2Voir les détails

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 3Voir les détails

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 4Voir les détails

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 5Voir les détails

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 6Voir les détails

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 7Voir les détails

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 8Voir les détails

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.

Certification

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...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
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.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
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 !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

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