Concepts
du cours
Introduction du cours Serveurs évolutifs : avant d'apprendre le métier, on visite le zoo des serveurs et on regarde ses bêtes travailler.
420-5A4-MT · Serveurs évolutifsVotre site fonctionne.
Mais que se passe-t-il
s'il fonctionne trop bien ?
Un article qui devient viral, une publicité qui rapporte, un produit qui décolle : le succès est la panne la plus agréable, mais c'est une panne quand même. Ce cours enseigne l'art de faire grandir un serveur au rythme de son succès. C'est exactement ce que veut dire évolutif.
Une petite entreprise dont le site décolle
Toute la session raconte la même histoire : une petite entreprise met en ligne son site, un WordPress, celui-là même que vous avez monté à la main au cours de serveur. Cent visiteurs par jour au début. Puis mille. Puis dix mille. À chaque palier de croissance, quelque chose casse, et c'est un nouveau concept du cours qui vient le sauver.
L'histoire se joue en 15 semaines, 3 modules et 9 actes. Vous n'êtes pas spectateurs : à chaque acte, c'est vous qui construisez la solution en laboratoire.
L'échelle des visiteurs
Chaque palier de l'échelle brise l'architecture qui suffisait au palier précédent. Une machine seule sert 100 visiteurs par jour sans effort. À 10 000, elle souffre. À 100 000, il en faut plusieurs. À un million, il faut que rien ne puisse tomber. Et les pics frappent toujours plus haut que la moyenne : les laboratoires du cours suivent cette échelle et la prouvent avec de vrais tests de charge.
La scalabilité
La scalabilité (de l'anglais scalability, qu'on traduit aussi par extensibilité) est la capacité d'un système à absorber la croissance : plus de visiteurs, plus de données, plus de calculs, sans s'effondrer et sans être reconstruit à zéro.
Grandit en ajoutant des ressources : le coût suit la croissance, le service reste rapide.
S'écroule au premier pic de trafic, ou exige de tout reconstruire à chaque palier. C'est ce qu'on veut éviter.
On explore la maquette finale avant d'apprendre le métier
Aujourd'hui, on ne construit rien. On visite. Bienvenue au zoo des serveurs : l'infrastructure finale du cours existe déjà, vivante et en marche, et on va la regarder fonctionner sous vos yeux. Quatre bêtes vous attendent dans leurs enclos (cliquez sur une carte pour y sauter).
La bête de somme : un WordPress qui encaisse la charge sans broncher.
🐕 Bête 2 · La passerelleLe chien de berger : il reçoit tous les visiteurs et dirige le troupeau.
🐝 Bête 3 · L'essaimLes abeilles : des conteneurs qui naissent et meurent selon la demande.
🦉 Bête 4 · La surveillanceLa chouette : des tableaux de bord qui voient tout, en direct.
Dans quinze semaines, c'est vous qui saurez élever chacune de ces bêtes.
Quatre enclos, une seule entrée
L'entrée est unique : la passerelle accueille chaque visiteur et l'envoie vers un conteneur de l'essaim, où vit une copie du site. La surveillance, elle, observe tout le monde sans jamais servir une page. Gardez ce plan en tête : la session entière consiste à apprendre à le construire.
🐂 Le site sous charge
Le premier enclos abrite un site WordPress, comme le vôtre. La différence : on va lui envoyer des centaines de visiteurs simulés d'un coup, en direct, avec un outil de test de charge.
- Observez le temps de réponse quand le trafic est calme.
- Observez-le pendant la rafale : il reste stable.
- Question à retenir : combien de visiteurs votre WordPress du cours de serveur aurait-il tenus, lui ?
Le test de charge est l'instrument de mesure du cours : c'est lui qui prouvera, chiffres à l'appui, chaque progrès de votre architecture.
🔗 Voir l'enclos en direct🐕 La passerelle qui distribue le trafic
Tous les visiteurs entrent par la même porte : une passerelle (un proxy inverse). Elle ne fabrique aucune page elle-même : elle décide qui va servir chaque visiteur, et répartit le travail entre plusieurs serveurs. C'est le balancement de charge.
- Rafraîchissez la page de démonstration : le nom du serveur qui vous répond change d'une visite à l'autre.
- Un serveur surchargé n'est plus une fatalité : on partage la file d'attente.
🐝 L'essaim de conteneurs
Derrière la passerelle vit un essaim : des dizaines de conteneurs, des copies légères du site, réparties sur plusieurs machines. Un orchestrateur les surveille et maintient le bon nombre de copies, tout seul.
- Sur le visualiseur, chaque boîte est un conteneur, chaque colonne une machine.
- On monte la demande : des conteneurs naissent.
- On la baisse : ils disparaissent. Personne n'a rien cliqué.
🦉 La surveillance qui veille
La dernière bête ne sert aucune page : elle regarde. Processeur, mémoire, requêtes par seconde, temps de réponse : tout est mesuré, tracé et affiché en continu sur des tableaux de bord.
- Un serveur qui souffre se voit ici avant que les visiteurs ne s'en plaignent.
- Sans surveillance, on pilote les yeux fermés : on découvre les pannes en même temps que les clients.
On débranche un serveur. En pleine charge.
Pour finir la visite, le dompteur entre dans la cage : on éteint brutalement une des machines de l'essaim pendant que les visiteurs simulés affluent.
- Le visualiseur montre les conteneurs orphelins renaître sur les machines survivantes.
- Le site, lui, n'a jamais cessé de répondre.
C'est la haute disponibilité : une architecture qui accepte que tout peut tomber, et qui survit quand ça arrive. À la fin de la session, votre projet d'équipe devra réussir exactement cette épreuve.
🔗 Voir la démonstration en directDeux façons de grandir
- Une seule machine, mais plus grosse : plus de processeur, plus de mémoire.
- Simple : rien à changer dans l'application.
- Mais il y a un plafond, et une seule machine reste un point de faille unique.
- Plusieurs machines ordinaires qui se partagent le travail.
- Presque sans limite : on ajoute des machines au besoin.
- Mais il faut distribuer, synchroniser, orchestrer : c'est tout un art, celui de ce cours.
Le module 1 pousse le vertical jusqu'à son plafond. Le module 2 franchit le mur en passant à l'horizontal.
3 modules, 9 actes, 15 semaines
Conteneurs et scalabilité verticale. Emballer WordPress dans des conteneurs, le composer, l'essaimer, puis pivoter verticalement et sécuriser.
Scalabilité horizontale. Séparer les services, mettre en cache, balancer la charge, doubler les points de faille, jusqu'au cluster réel de Raspberry Pi.
Projet haute-disponibilité. En équipe : plus de 12 machines virtuelles, une infrastructure complète, documentée et démontrée sous panne.
Le plan détaillé, acte par acte, vous attend sur le site du cours : chaque semaine y raconte son bout d'histoire.
Le bagage du cours de serveur
- Administrer un serveur Linux en ligne de commande
- Créer des machines virtuelles avec VirtualBox
- Installer une pile LAMP et un WordPress à la main
- Vous connecter en SSH et gérer des clés
- Emballer : les conteneurs Docker
- Multiplier : les répliques et l'orchestration
- Mesurer : les tests de charge et la surveillance
- Encaisser : la haute disponibilité
Votre WordPress installé à la main est le point de départ officiel de l'histoire : dès la semaine prochaine, on l'emballe.
L'IA fait officiellement partie du cours
La petite entreprise de notre histoire a un consultant : une intelligence artificielle. Vous aussi.
- Pour les parties avancées, des prompts préparés vous seront fournis : des demandes bien formulées qui débloquent l'étape suivante.
- L'IA explique, dépanne et accélère : elle ne remplace pas la compréhension. Aux évaluations, c'est votre tête qui répond.
- Règle du cours : quand l'IA produit une commande, vous devez pouvoir expliquer ce qu'elle fait avant de l'exécuter.
25 + 25 + 50
Conteneuriser, composer, essaimer, pivoter et sécuriser : les laboratoires des semaines 2 à 5.
Séparer, mettre en cache, balancer, redonder, jusqu'au cluster réel : semaines 6 à 10.
Le grand oeuvre en équipe : plus de 12 machines, une infrastructure complète, démontrée sous panne.
evolutif.projet.autos
Le matériel du cours vit sur le web, pas dans un dossier partagé : https://evolutif.projet.autos/
- Le calendrier des semaines, avec les diaporamas et les laboratoires de chaque journée.
- Le plan de la session raconté en 9 actes.
- Le site évolue chaque semaine, comme le serveur dont il parle : ajoutez-le à vos favoris.
Tout le monde part du même point
Après la visite, on prépare le terrain : le laboratoire du jour sert à vérifier l'environnement de travail pour que les quinze prochaines semaines se construisent sur des fondations identiques.
- La partition Linux de votre poste démarre et fonctionne.
- Docker est opérationnel : un conteneur se lance sans erreur.
- Le noyau .14 est retenu en place (apt-mark hold) : pas de mise à jour surprise en pleine session.
- L'installation d'un paquet Linux se termine sans erreur.
Ensuite on se remet dans le bain : révision Docker et quiz pour réveiller les réflexes de la session 4. Les machines virtuelles VirtualBox et leurs images spéciales attendront la semaine 6.
Les trois idées du jour
- La scalabilité, c'est absorber la croissance sans s'effondrer ni tout reconstruire. Vertical : plus gros. Horizontal : plus nombreux.
- L'infrastructure finale existe, vous l'avez vue vivre : site sous charge, passerelle, essaim, surveillance (revoir le plan du zoo). La session entière consiste à apprendre à la construire.
- Tout se mesure : le test de charge dira toujours si un progrès est réel.
La semaine prochaine, l'histoire commence pour vrai. Acte 1 : la fondation. Le WordPress de la petite entreprise vit sans armure sur sa machine, fragile et impossible à cloner. Premier réflexe de pro : l'emballer dans des conteneurs.