Choisissez votre langue
Formation WebSockets
Plus de 2 millions d'apprenants dans le monde

Formation WebSockets

Maîtrisez les WebSockets de A à Z et créez les applications en temps réel que les utilisateurs modernes attendent. Ce cours vous mène des principes fondamentaux du protocole jusqu'au déploiement de qualité production, en couvrant la sécurité, la mise à l'échelle et l'optimisation du rendement. Que vous créiez des applications de clavardage, des tableaux de bord en direct ou des outils multijoueurs, vous aurez les compétences nécessaires pour livrer en toute confiance.

Dedika pour entreprises

Ce que vous allez apprendre:

  • Implémentez des serveurs et clients WebSocket en full-duplex à partir de rien en utilisant les API de base.

  • Sécurisez les points de terminaison WebSocket avec l'authentification JWT, la validation de l'origine et le chiffrement TLS.

  • Concevez des systèmes évolutifs horizontalement à l'aide de courtiers pub/sub et d'une gestion d'état distribuée.

  • Gérez le tramage des messages binaires et JSON, le routage et la validation de schéma sur des connexions actives.

  • Créez des suites de tests exhaustives couvrant les scénarios de tests unitaires, d'intégration, de charge et de chaos.

  • Déployez des services WebSocket conteneurisés avec des mises à jour progressives, des vérifications de l'état de santé et un profilage du rendement.

Comment vous étudiez de façon pratique Formation WebSockets

Comment vous pratiquez Formation WebSockets

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour entreprises, le cours inclut des exercices et des exemples adaptés à votre propre entreprise et à ses besoins spécifiques.

Cliquez ici

Contenu du cours

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

Chapitre 1Voir les détails

Introduction aux WebSockets et au Web en temps réel

  • Leçon 1 • Principes fondamentaux du protocole WebSocket

    Définit le protocole WebSocket, sa spécification RFC et son rôle dans l'activation de la communication bidirectionnelle simultanée. Ancre les étudiants dans la définition technique avant la mise en œuvre.

  • Leçon 2 • Le processus de handshake WebSocket

    Explique le mécanisme de mise à niveau HTTP qui initie une connexion WebSocket. Les étudiants comprennent comment une requête HTTP standard passe à un canal WebSocket persistant.

  • Leçon 3 • Architecture WebSocket vs HTTP

    Compare WebSocket et HTTP au niveau architectural, en couvrant les différences dans le cycle de vie des connexions. Prépare les étudiants à choisir le bon protocole pour un scénario donné.

  • Leçon 4 • Le besoin de communication en temps réel

    Explore pourquoi le HTTP traditionnel est insuffisant pour les scénarios de données en direct. Établit la motivation pour étudier les WebSockets en tant que protocole dédié en temps réel.

Chapitre 2Voir les détails

Construire votre première connexion WebSocket

  • Leçon 1 • Gestion des événements du cycle de vie de la connexion

    Couvre les événements d'ouverture, de message, d'erreur et de fermeture côté client et serveur. Les étudiants apprennent à gérer chaque phase du cycle de vie de manière propre et prévisible.

  • Leçon 2 • Création d'un serveur WebSocket de base

    Montre comment écrire un serveur minimal qui écoute les connexions WebSocket et renvoie les messages. Introduit les gestionnaires d'événements serveur de base utilisés tout au long du cours.

  • Leçon 3 • Configuration de l'environnement de développement

    Couvre la sélection d'outils, l'installation du runtime et l'échafaudage du projet pour le développement WebSocket. Assure que chaque étudiant commence avec un environnement de travail cohérent.

  • Leçon 4 • Test de la connexion avec les outils de développement

    Montre comment inspecter les trames WebSocket dans les outils de développement du navigateur et les panneaux réseau. Les étudiants gagnent en confiance pour vérifier que leurs connexions se comportent comme prévu.

  • Leçon 5 • Construction d'un client WebSocket dans le navigateur

    Utilise l'API WebSocket native du navigateur pour se connecter au serveur et échanger des messages. Les étudiants voient la boucle complète client-serveur en action pour la première fois.

Chapitre 3Voir les détails

Trames de messages, formats de données et encodage

  • Leçon 1 • Transmission de données binaires

    Introduit les types ArrayBuffer et Blob pour envoyer des charges utiles binaires via WebSockets. Les étudiants peuvent transférer efficacement des images, de l'audio et d'autres contenus binaires.

  • Leçon 2 • Structure de trame WebSocket

    Décompose le format de trame WebSocket incluant les champs d'opcode, de masquage et de longueur de charge utile. Fournit les connaissances de bas niveau nécessaires pour comprendre le comportement du protocole et le débogage.

  • Leçon 3 • Envoi et réception de messages textuels

    Couvre les exigences d'encodage UTF-8 pour les trames textuelles et les modèles de sérialisation courants. Les étudiants peuvent échanger de manière fiable des données lisibles entre le client et le serveur.

  • Leçon 4 • Travail avec des charges utiles JSON

    Établit JSON comme format de données structuré standard pour les messages WebSocket. Les étudiants conçoivent et analysent des enveloppes de messages typées pour une utilisation réelle dans une application.

  • Leçon 5 • Fragmentation des messages et trames de continuation

    Explique comment les gros messages sont divisés en trames de continuation et réassemblés. Les étudiants comprennent la fragmentation pour éviter la perte de données avec de grosses charges utiles.

Chapitre 4Voir les détails

Architecture WebSocket côté serveur

  • Leçon 1 • Salles et espaces de noms pour la messagerie ciblée

    Introduit le regroupement logique des connexions en salles pour la livraison de messages ciblée. Les étudiants mettent en œuvre les opérations de rejoindre, quitter une salle et de diffusion ciblée.

  • Leçon 2 • Mécanismes de pulsation et Ping-Pong

    Explique les trames de ping et de pong WebSocket utilisées pour détecter les connexions obsolètes. Les étudiants mettent en œuvre une boucle de pulsation côté serveur qui nettoie automatiquement les clients morts.

  • Leçon 3 • Diffusion de messages à tous les clients

    Implémente la diffusion côté serveur afin que chaque client connecté reçoive un message simultanément. Les étudiants construisent le mécanisme de publication de base sous-jacent aux applications de clavardage et de flux en direct.

  • Leçon 4 • Gestion de plusieurs connexions client

    Couvre les structures de données et les modèles pour suivre tous les clients WebSocket actifs sur le serveur. Les étudiants mettent en œuvre un registre de connexions utilisé dans chaque fonctionnalité serveur ultérieure.

  • Leçon 5 • Gestion des erreurs et des plantages côté serveur

    Couvre la propagation des erreurs, la gestion des exceptions non capturées et l'arrêt gracieux du serveur. Les étudiants construisent des serveurs résilients qui peuvent récupérer sans perdre toutes les connexions actives.

Chapitre 5Voir les détails

Authentification et autorisation dans les WebSockets

  • Leçon 1 • Expiration de session et renouvellement de jeton

    Gère l'expiration des jetons pendant les sessions WebSocket de longue durée sans forcer la reconnexion. Les étudiants mettent en œuvre le renouvellement de jeton initié par le serveur et la terminaison gracieuse de session.

  • Leçon 2 • Authentification basée sur un jeton lors du handshake

    Implémente la validation d'un JWT ou d'un jeton opaque pendant la requête de mise à niveau HTTP. Les étudiants sécurisent le point d'entrée de la connexion avant tout échange de messages.

  • Leçon 3 • Messages d'authentification après le handshake

    Couvre un modèle alternatif où le client envoie ses identifiants comme premier message après la connexion. Les étudiants mettent en œuvre un flux de message d'authentification avec application d'un délai d'attente.

  • Leçon 4 • Défis d'authentification dans les WebSockets

    Souligne pourquoi les modèles standard d'authentification par cookie et par session ne sont pas fiables pour les mises à niveau WebSocket. Motive les approches basées sur les jetons couvertes dans les sections suivantes.

  • Leçon 5 • Autorisation et permissions basées sur les rôles

    Attache les rôles utilisateur au contexte de la connexion et les applique à chaque message entrant. Les étudiants empêchent l'escalade de privilèges au sein d'une session WebSocket active.

Chapitre 6Voir les détails

Passage à l'échelle des WebSockets sur plusieurs serveurs

  • Leçon 1 • État partagé avec des caches distribués

    Utilise un cache distribué pour stocker l'appartenance aux salles et les données de présence utilisateur accessibles par toutes les instances de serveur. Les étudiants éliminent l'état par instance qui brise le passage à l'échelle.

  • Leçon 2 • Le problème du passage à l'échelle horizontale

    Explique pourquoi un client connecté au serveur A ne peut pas recevoir les messages diffusés par le serveur B. Établit le besoin d'une couche pub/sous partagée comme solution de passage à l'échelle centrale.

  • Leçon 3 • Intégration d'un courtier de messages

    Connecte chaque instance de serveur WebSocket à un courtier pub/sous central pour la livraison de messages entre serveurs. Les étudiants mettent en œuvre les opérations de souscription et de publication à partir du processus serveur.

  • Leçon 4 • Surveillance et observabilité à l'échelle

    Les étudiants peuvent diagnostiquer les goulots d'étranglement de performance et les anomalies de connexion en production.

  • Leçon 5 • Répartition de charge des connexions WebSocket

    Configure un répartiteur de charge pour distribuer les requêtes de mise à niveau WebSocket entre les instances de serveur. Les étudiants comprennent la configuration des sessions persistantes et ses compromis.

Chapitre 7Voir les détails

Renforcement de la sécurité pour les applications WebSocket

  • Leçon 1 • Sécurisation des connexions avec TLS

    Applique des connexions WebSocket cryptées à l'aide du schéma wss:// et d'une configuration TLS appropriée. Les étudiants configurent les certificats et éliminent l'exposition WebSocket en texte clair.

  • Leçon 2 • Validation des entrées et prévention des injections

    Valide et assainit chaque message WebSocket entrant pour prévenir les attaques par injection et par désérialisation. Les étudiants appliquent la validation de schéma comme première étape de traitement.

  • Leçon 3 • Limitation de débit et protection contre les dénis de service

    Implémente des limites de débit de messages par connexion et par utilisateur pour empêcher l'épuisement des ressources. Les étudiants configurent le ralentissement des connexions et la déconnexion automatique des contrevenants.

  • Leçon 4 • Sécurité des dépendances et des bibliothèques

    Aborde les vulnérabilités introduites par les bibliothèques WebSocket tierces et leurs dépendances. Les étudiants établissent un processus pour auditer et mettre à jour les dépendances en toute sécurité.

  • Leçon 5 • Détournement de WebSocket intersite

    Explique comment des sites malveillants peuvent initier des connexions WebSocket en utilisant les identifiants d'une victime. Les étudiants mettent en œuvre la validation de l'en-tête Origin pour bloquer les tentatives de détournement intersite.

Chapitre 8Voir les détails

Déploiement en production et optimisation du rendement

  • Leçon 1 • Gestion des pools de connexions et des ressources

    Gère les ressources du serveur en limitant les connexions simultanées et en réutilisant les connexions en aval. Les étudiants empêchent l'épuisement des ressources sous une charge de connexion élevée.

  • Leçon 2 • Conteneurisation et orchestration

    Empaquète le serveur WebSocket dans un conteneur et le déploie avec un orchestrateur pour un passage à l'échelle automatisé. Les étudiants configurent les vérifications de l'état et les mises à jour progressives sans interrompre les connexions.

  • Leçon 3 • Optimisation du débit des messages

    Applique le regroupement, la compression et les optimisations de sérialisation pour maximiser les messages par seconde. Les étudiants réduisent la surcharge par message sans sacrifier la fiabilité.

  • Leçon 4 • Profilage du rendement et identification des goulots d'étranglement

    Utilise des outils de profilage pour localiser les goulots d'étranglement CPU, mémoire et E/S dans le code du serveur WebSocket. Les étudiants établissent une base de référence et mesurent l'impact de chaque optimisation.

  • Leçon 5 • Déploiement continu et restauration

    Établit un pipeline de déploiement avec des tests automatisés, un déploiement progressif et une capacité de restauration rapide. Les étudiants expédient les modifications WebSocket en toute sécurité avec un minimum d'interruption pour l'utilisateur.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Développeurs et développeuses backend : prêts à ajouter une communication persistante et bidirectionnelle à leur pile technologique.

  • Ingénieurs et ingénieures full-stack : créant des fonctionnalités nécessitant des données en direct sans rechargement de page.

  • Développeurs et développeuses frontend : souhaitant maîtriser l'ensemble de la couche temps réel, et non seulement l'interface utilisateur.

  • Architectes logiciels : évaluant l'infrastructure WebSocket pour une équipe ou une feuille de route produit.

  • Diplômés et diplômées de bootcamp : passant des applications CRUD aux systèmes événementiels en temps réel.

  • Développeurs et développeuses indépendants : livrant des outils multijoueurs ou collaboratifs sans équipe d'infrastructure dédiée.

Ce que nos apprenants disent

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 à 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 Numérique
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 il est présenté ainsi que la transcription des vidéos, 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 au Canada ?

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 fonctionne?

Cours PDF