Leçon 03 · Métriques

Latence vs Throughput : Vitesse vs Volume

Imaginez un tuyau d'arrosage. La Latence, c'est le temps que met la première goutte d'eau pour aller du robinet au bout du tuyau. Le Throughput (débit), c'est la quantité d'eau totale qui sort du tuyau par seconde.

En System Design, c'est pareil ! Comprendre cette différence est crucial pour savoir si votre système est "lent" ou juste "surchargé".

1

Le Duel : Le temps du trajet vs Le trafic

Latence (Vitesse)
C'est le temps d'attente. C'est le chrono qui tourne entre le moment où vous cliquez sur un bouton et le moment où le résultat s'affiche.
  • Définition : Temps pour effectuer une seule action du début à la fin.
  • Unité : Millisecondes (ms).
  • Objectif : Être le plus bas possible (le plus rapide).
Throughput (Débit)
C'est la capacité de traitement. C'est combien de personnes votre site peut accueillir simultanément avant de s'écrouler.
  • Définition : Nombre d'actions réussies par unité de temps.
  • Unité : Requêtes par seconde (RPS) ou Go/s (pour les données).
  • Objectif : Être le plus haut possible (le plus gros volume).
2

Visualisation

Diagramme comparant Latence (Vitesse) et Throughput (Volume)
À gauche : la latence est le temps de trajet d'un seul paquet. À droite : le throughput est le volume total de paquets qui passent dans le tuyau par seconde.
3

Tableau Comparatif

CritèreLatenceThroughput (Débit)
Question clé"Combien de temps ça prend pour UN utilisateur ?""Combien d'utilisateurs TOTAL je peux gérer ?"
Contexte ClientExpérience Utilisateur (Clic, temps de chargement d'une page)Scalabilité (Gérer des millions d'utilisateurs)
Comment l'améliorer ?Réduire la distance (CDN), optimiser le code, utiliser un Cache (Redis)Ajouter des serveurs (Scale Out), faire les choses en parallèle (Async)
4

Le Compromis (Trade-off)

Le paradoxe : améliorer l'un peut dégrader l'autre

C'est le dilemme classique.

Prenons l'exemple du "Batching" (regrouper plusieurs petites requêtes pour les envoyer en une seule grosse à la base de données).

  • Throughput : C'est génial ! La base de données est plus efficace, elle gère plus de données au total.
  • Latence : C'est mauvais pour la première requête du groupe, qui doit attendre que les autres arrivent avant d'être envoyée. Son temps d'attente augmente.

5

Les Pièges Classiques

Le mensonge de la Moyenne

Ne dites jamais "Ma latence moyenne est de 100ms". Si 1% de vos utilisateurs attendent 10 secondes, votre moyenne sera bonne, mais ces utilisateurs seront furieux.
Solution : Parlez en Percentiles (p95, p99). "99% de mes utilisateurs ont une réponse en moins de 200ms". C'est beaucoup plus honnête.

Latence ≠ Ping

Le "Ping" n'est que le temps de trajet réseau. La latence totale inclut aussi le temps que le serveur passe à travailler (CPU) et le temps passé à attendre dans une file (Queueing).
Rappel : Latence Totale = Trajet Réseau + Temps de Traitement + Attente.

6

En Entretien (Le "System Design Interview")

Clarifiez les besoins dès le début

Avant de dessiner quoi que ce soit, posez la question cruciale :

La Question :"Qu'est-ce qui est le plus important pour ce système ? Une réponse ultra-rapide pour l'utilisateur (Faible Latence) ou la capacité à ingérer des téraoctets de données (Haut Throughput) ?"
Le mot-clé bonus :Mentionnez la "Tail Latency" (Latence de queue). C'est la latence vécue par les 1% ou 0.1% d'utilisateurs les plus lents (le fameux p99 ou p99.9). Montrer que vous vous souciez de ces cas extrêmes impressionne toujours les interviewers.
7

Flash Quiz

Auto-évaluation
8

À toi de jouer

Mission : Identifier le goulot d'étranglement

Dessine un flux simple : Client ➔ Serveur ➔ Base de Données.

Les temps :
1. Client ➔ Serveur : 50ms
2. Serveur ➔ Base de Données (Lecture) : 800ms (Aïe !)

Ta mission : Où est le problème de latence ? Dessine une solution (indice : un carré magique entre le Serveur et la DB) pour drastiquement réduire ce temps.

9

Pour les curieux (Bonus)

La Loi de Little (Little's Law)
C'est une formule magique et très intuitive :
L = λ * W

En français : Le nombre de clients dans votre magasin (L) est égal au nombre de clients qui entrent par minute (λ, le débit) multiplié par le temps moyen qu'ils passent à l'intérieur (W, la latence). Si votre caissier est lent (latence élevée), votre magasin se remplit !
Jitter (Gigue) : L'ennemi de la vidéo
Le Jitter, c'est quand la latence n'est pas stable. Avoir une latence constante de 100ms est souvent bien mieux qu'une latence qui saute de 20ms à 500ms sans arrêt. Le Jitter est l'ennemi numéro 1 des appels vidéo (Zoom, Teams) et du streaming en direct, car il provoque des saccades.