Tous les termes du labyrinthe, définis simplement et illustrés par un exemple. Clique sur un terme dans une définition pour l'ouvrir.
Aucun terme ne correspond. Essaie un autre mot.
A
ACID
Les quatre garanties d'une transaction : Atomicité (tout ou rien), Cohérence (les règles restent vraies), Isolation (les transactions ne se gênent pas), Durabilité (ce qui est validé survit à une panne).
Exemple · Un virement débite le compte A et crédite le compte B, ou ne fait rien du tout.
Acquittement
Message qu'un consommateur envoie à la file pour confirmer qu'il a traité un message. Tant qu'il n'est pas reçu, la file peut redistribuer le message.
Exemple · Le worker envoie la facture par email, puis acquitte le message, qui quitte la file.
Actif-actif
Architecture où plusieurs régions servent du trafic en même temps. Pas de bascule à faire en cas de panne, mais des écritures simultanées sur les mêmes données à réconcilier.
Exemple · Les clients d'Abidjan sont servis par la région d'Afrique de l'Ouest, ceux de Paris par la région Europe.
Actif-passif
Architecture où une région sert tout le trafic pendant qu'une autre attend, avec les données répliquées, prête à prendre le relais par un basculement.
Exemple · La région de Paris sert Mboa Market ; celle de Johannesburg ne prend le relais qu'en cas de panne.
ADR (Architecture Decision Record)
Document d'une page qui enregistre une décision d'architecture : son contexte, la décision, ses conséquences et son statut. Il est rangé dans le dépôt du code et n'est jamais réécrit, seulement remplacé.
Exemple · docs/adr/0012-cache-partage.md explique pourquoi l'équipe a choisi Redis plutôt que des caches locaux.
Adresse IP
Numéro qui identifie une machine sur un réseau, comme une adresse postale.
Exemple · 203.0.113.10 (IPv4) ou 2001:db8::10 (IPv6).
Anycast
Technique réseau où la même adresse IP est annoncée depuis plusieurs endroits du monde : chaque utilisateur est dirigé vers le plus proche.
Exemple · Les serveurs DNS publics et la plupart des CDN utilisent l'anycast pour répondre depuis le site le plus proche.
API
Interface de programmation : le contrat qu'un programme expose pour que d'autres programmes l'utilisent (les appels possibles, leurs paramètres et leurs réponses).
Exemple · L'appli mobile de Mboa Market appelle GET /produits/42 sur l'API pour afficher un produit.
Astreinte
Organisation où des ingénieurs, à tour de rôle, sont joignables pour répondre aux alertes en dehors des heures de bureau.
Exemple · Cette semaine, Koffi est d'astreinte : l'alerte du paiement le réveille s'il le faut.
Asynchrone
Se dit d'un travail fait plus tard, sans faire attendre celui qui l'a demandé. Il passe souvent par une file de messages.
Exemple · La commande est confirmée tout de suite ; la facture PDF est générée de façon asynchrone, quelques secondes plus tard.
Attente exponentielle
Espacer les nouvelles tentatives de plus en plus (1 s, 2 s, 4 s, 8 s…) pour laisser un service se relever au lieu de l'écraser.
Exemple · Le paiement échoue : nouvel essai après 1 s, puis 2 s, puis 4 s, puis abandon.
Au moins une fois
Garantie de livraison : un message n'est jamais perdu, mais il peut arriver plus d'une fois. Les consommateurs doivent donc être idempotents.
Exemple · Un worker plante avant d'acquitter : le message « facture 812 » est livré une seconde fois.
Authentification
Prouver qui l'on est : mot de passe, code reçu par SMS, clé de sécurité, empreinte. À ne pas confondre avec l'autorisation.
Exemple · Tu entres ton numéro et le code reçu par SMS : Mboa Market sait que c'est bien toi.
Authentification multifacteur
Authentification qui exige au moins deux preuves de nature différente : ce que tu sais, ce que tu as, ce que tu es.
Exemple · Mot de passe, puis code reçu par SMS ou généré par une appli.
Autorisation
Vérifier ce que l'utilisateur authentifié a le droit de faire, à chaque requête et sur chaque objet.
Exemple · Tu peux voir tes factures, mais pas celles des autres clients.
Autoscaling
Ajout et retrait automatiques de serveurs selon la charge. Il suppose des serveurs sans état qui démarrent vite.
Exemple · Trois serveurs la nuit, douze le jour de la promo, sans intervention humaine.
Avec état
Se dit d'un serveur qui garde en mémoire des informations entre deux requêtes (sessions, paniers) : il n'est pas interchangeable.
Exemple · Un serveur qui garde le panier en mémoire : s'il redémarre, les paniers disparaissent.
C
Cache
Mémoire très rapide qui garde des copies de réponses déjà calculées pour les resservir sans refaire le travail.
Exemple · La fiche du pagne le plus vendu est servie depuis Redis en une milliseconde, au lieu de 20 ms depuis la base.
Cache busting
Changer le nom d'un fichier à chaque version (souvent avec une empreinte de son contenu) pour que les caches et les navigateurs téléchargent la nouvelle version.
Exemple · style.css devient style.3f9a1c.css à chaque déploiement.
Cache-aside
Façon d'utiliser un cache : l'application le consulte d'abord ; en cas de défaut, elle lit la base puis range la réponse dans le cache avec un TTL.
Exemple · Fiche absente du cache → lecture en base → copie dans Redis pour 5 minutes.
Cache-Control
En-tête HTTP qui indique aux navigateurs et aux CDN s'ils peuvent garder une copie d'une réponse, et pendant combien de temps.
Exemple · Cache-Control: max-age=31536000 : cette image peut être gardée un an.
Calcul de coin de table
Estimation rapide, avec des chiffres arrondis, pour trouver l'ordre de grandeur d'un trafic, d'un stockage ou d'un coût avant de concevoir.
Exemple · 500 000 utilisateurs × 20 requêtes ÷ 100 000 secondes ≈ 100 requêtes par seconde.
Capture des changements (CDC)
Lire le journal des écritures d'une base de données pour publier chaque modification sous forme d'événement, sans toucher au code de l'application.
Exemple · Chaque modification de la table produits met à jour l'index de recherche quelques secondes plus tard.
Cardinalité
Nombre de valeurs différentes que prend un champ. Une bonne clé de partitionnement a une forte cardinalité.
Exemple · L'identifiant client a des millions de valeurs ; le statut de commande, cinq.
CDN
Réseau de diffusion de contenu : des serveurs répartis dans le monde qui gardent des copies du contenu statique au plus près des utilisateurs.
Exemple · Les photos de Mboa Market sont servies depuis Lagos et Johannesburg au lieu de Paris.
Chiffrement au repos
Chiffrer les données stockées sur les disques, pour qu'un disque ou une sauvegarde volés restent illisibles.
Exemple · La base et ses sauvegardes sont chiffrées avec une clé gérée par le fournisseur cloud.
Chorégraphie
Façon de mener une saga où chaque service réagit aux événements des autres, sans chef d'orchestre central.
Exemple · Le stock entend « commande créée » et réserve ; le paiement entend « stock réservé » et débite.
Classes de stockage
Niveaux de stockage à prix et vitesse différents : chaud (lu souvent, plus cher), froid ou archive (rarement lu, bien moins cher).
Exemple · Les journaux de plus de 30 jours passent automatiquement en stockage froid.
Clé chaude
Clé qui reçoit une part démesurée du trafic : elle surcharge la partition ou le nœud de cache qui la porte, quel que soit leur nombre.
Exemple · La boutique d'une star concentre 70 % des écritures sur une seule partition.
Clé d'idempotence
Identifiant unique envoyé avec une opération : si le serveur la revoit, il renvoie le premier résultat au lieu de recommencer.
Exemple · L'en-tête Idempotency-Key: 7f3a… évite un double débit quand l'appli renvoie un paiement.
Clé de partitionnement
Champ qui décide sur quelle partition va chaque donnée.
Exemple · L'identifiant client : toutes les commandes d'un client sont sur la même partition.
Client
Programme qui envoie des requêtes à un serveur : un navigateur, une appli mobile, un autre service.
Exemple · L'appli Mboa Market sur ton téléphone est un client de l'API.
Cloisonnement
Séparer les ressources (threads, connexions) par dépendance, comme les compartiments étanches d'un navire, pour qu'une seule dépendance malade ne puisse pas tout épuiser.
Exemple · Le service de recommandations a son propre pool de 20 connexions : même bloqué, il laisse les autres libres.
Code de statut
Nombre à trois chiffres au début d'une réponse HTTP : 2xx succès, 3xx redirection, 4xx erreur de la requête, 5xx erreur du serveur.
Exemple · 200 (OK), 302 (redirection), 404 (introuvable), 429 (trop de requêtes), 500 (erreur du serveur).
Cohérence à terme
Les copies d'une donnée peuvent diverger un moment, mais finissent par converger si plus personne ne la modifie.
Exemple · Le nombre de « j'aime » d'un produit est en retard de quelques secondes sur certains serveurs.
Cohérence forte
Toute lecture voit la dernière écriture validée, comme s'il n'existait qu'une seule copie de la donnée.
Exemple · Juste après un paiement, toutes les lectures du solde montrent le nouveau montant.
Commandant d'incident
Personne qui coordonne la réponse à un incident : elle répartit les rôles, prend les décisions et fait circuler l'information, sans tout faire elle-même.
Exemple · « Je prends le commandement. Aïcha communique, Koffi bascule. Point dans 15 minutes. »
Concurrence
Nombre de requêtes en cours de traitement au même moment. D'après la loi de Little, elle vaut le débit multiplié par la latence.
Exemple · 500 requêtes par seconde qui durent 0,4 s chacune : 200 requêtes en cours en même temps.
Confiance zéro
Principe de sécurité : ne jamais faire confiance à une requête parce qu'elle vient de « l'intérieur » du réseau ; chaque appel est authentifié et autorisé.
Exemple · Même entre deux services internes, chaque appel présente un certificat et passe un contrôle d'autorisation.
Consommateur
Programme qui lit les messages d'une file ou d'un journal et fait le travail correspondant.
Exemple · Le worker « factures » consomme les messages de la file et génère les PDF.
Construire ou acheter
Choix entre développer un composant soi-même ou utiliser un produit ou un service existant. On ne construit en général que ce qui différencie l'entreprise.
Exemple · Mboa Market construit son moteur de recommandations, mais achète l'envoi de SMS à un fournisseur.
Contenu statique
Fichiers identiques pour tous les visiteurs, qui changent rarement : images, CSS, JavaScript, vidéos.
Exemple · La photo d'un pagne est la même pour tous les clients ; leur panier, non.
Contexte délimité
Partie du métier qui a son propre vocabulaire et son propre modèle de données (notion du Domain-Driven Design). C'est une frontière naturelle pour un module ou un service.
Exemple · Pour le catalogue, un « produit » a des photos ; pour la livraison, il a un poids et des dimensions.
Contrainte
Limite imposée au design, qu'on ne choisit pas : budget, délai, taille de l'équipe, technologie existante, loi.
Exemple · « Contrainte : la solution doit tourner sur PostgreSQL, que l'équipe connaît déjà. »
Contre-pression
Mécanisme par lequel un composant saturé signale à ceux qui l'appellent de ralentir, au lieu d'accepter du travail qu'il ne pourra pas faire.
Exemple · La file est pleine : elle refuse les nouveaux messages avec un 429, et l'émetteur ralentit.
Contrôle de santé
Vérification régulière qu'un serveur répond correctement ; un serveur qui échoue est retiré de la rotation par le répartiteur.
Exemple · Toutes les 5 secondes, le répartiteur appelle GET /health sur chaque serveur.
Coût total de possession
Coût complet d'une solution sur sa durée de vie : achat ou développement, mais aussi exploitation, maintenance, sécurité et temps des équipes.
Exemple · Un système maison « gratuit » qui occupe deux ingénieurs à plein temps coûte plus cher qu'un service à 500 $ par mois.
Coût unitaire
Coût d'infrastructure rapporté à une unité métier : par commande, par client actif, par transaction.
Exemple · 12 000 $ pour 400 000 commandes : 3 centimes par commande.
CQRS
Séparer le modèle qui écrit les données de celui (ou ceux) qui servent les lectures complexes, chacun optimisé pour son usage.
Exemple · Les commandes s'écrivent dans PostgreSQL ; la recherche lit une copie dans un moteur de recherche.
CRDT
Structure de données qu'on peut modifier à plusieurs endroits en même temps et fusionner automatiquement, sans conflit.
Exemple · Un compteur de « j'aime » incrémenté dans deux régions donne le bon total après fusion.
D
DAU (utilisateurs actifs par jour)
Nombre d'utilisateurs différents qui utilisent le service au moins une fois dans la journée. Point de départ de la plupart des estimations.
Exemple · 500 000 DAU × 20 requêtes chacun = 10 millions de requêtes par jour.
Débit
Quantité de travail traitée par unité de temps, souvent en requêtes par seconde.
Exemple · Le service de paiement traite 120 paiements par seconde.
Défaut de cache
La réponse n'était pas dans le cache : il faut la calculer ou la lire à la source, plus lentement.
Exemple · Premier visiteur sur un produit rarement vu : défaut de cache, lecture en base.
Défense en profondeur
Empiler plusieurs couches de protection indépendantes, pour qu'une couche qui cède n'ouvre pas tout le système.
Exemple · Pare-feu applicatif, réseau cloisonné, authentification multifacteur, chiffrement et journaux d'audit.
Dégradation gracieuse
Continuer à rendre le service essentiel quand une partie tombe, en renonçant temporairement aux fonctionnalités secondaires.
Exemple · Recherche en panne : la page d'accueil affiche les catégories, et le paiement fonctionne toujours.
Délai d'attente (timeout)
Durée maximale pendant laquelle on attend une réponse avant d'abandonner, pour libérer les ressources.
Exemple · Après 300 ms sans réponse des recommandations, la page s'affiche sans elles.
Délestage
Refuser volontairement le trafic le moins important quand le système déborde, pour protéger l'essentiel.
Exemple · Au pic, les recommandations et les robots sont coupés pour garder le paiement rapide.
Dépendance au fournisseur
Situation où quitter un fournisseur devient très coûteux, parce que le système s'appuie sur ses services propriétaires.
Exemple · Une application écrite autour d'une base propriétaire d'un seul cloud.
Déploiement canari
Livrer une nouvelle version d'abord à une petite part du trafic (5 %, par exemple), surveiller, puis élargir. En cas de problème, seule une minorité est touchée.
Exemple · La nouvelle page de paiement est montrée à 5 % des clients pendant une heure avant tout le monde.
Déploiement progressif
Mettre à jour les serveurs un par un : le répartiteur retire celui qu'on met à jour, puis le remet en service.
Exemple · Sur quatre serveurs, trois servent les clients pendant que le quatrième passe à la nouvelle version.
Dernière écriture gagnante
Règle de résolution de conflit : quand deux copies ont été modifiées, on garde la modification la plus récente. Simple, mais l'autre modification est perdue.
Exemple · Deux appareils changent l'adresse en même temps : celle enregistrée en dernier est conservée.
Dimensionnement au plus juste
Ajuster la taille des machines à leur charge réelle, pour ne pas payer de capacité inutilisée.
Exemple · Douze serveurs à 17 % de charge ramenés à quatre serveurs à 50 %.
Disjoncteur
Mécanisme qui arrête d'appeler une dépendance défaillante : les appels échouent tout de suite (et une solution de repli répond), puis quelques essais vérifient si elle est revenue.
Exemple · Les recommandations répondent en 4 s : le disjoncteur s'ouvre et les pages s'affichent sans elles.
Disponibilité
Part du temps pendant laquelle un service fonctionne, souvent exprimée en « neufs » : 99,9 % correspond à environ 8,8 heures de panne par an.
Exemple · Un objectif de 99,99 % autorise environ 53 minutes de panne par an.
DNS
Système de noms de domaine : l'annuaire d'Internet, qui traduit un nom de domaine en adresse IP.
Exemple · mboamarket.com → 203.0.113.10.
DNS géographique
DNS qui renvoie une adresse différente selon la position de l'utilisateur, pour l'envoyer vers la région la plus proche ou vers une région de secours.
Exemple · mboamarket.com pointe vers Johannesburg pour l'Afrique et vers Paris pour l'Europe.
Document de conception
Document de une à trois pages qui présente un design avant de le construire : contexte, objectifs, non-objectifs, proposition, alternatives, risques, plan de déploiement.
Exemple · Le document du nouveau service de paiement est envoyé au comité 48 heures avant la revue.
Donnée périmée
Copie d'une donnée qui n'est plus à jour, par exemple dans un cache ou un réplica en retard.
Exemple · Le cache affiche encore l'ancien prix, alors que le vendeur l'a baissé.
Drapeau de fonctionnalité
Interrupteur qui active ou désactive une fonctionnalité sans redéployer, pour tout le monde ou pour une partie des utilisateurs.
Exemple · Le nouveau tunnel de paiement bogue : on coupe son drapeau, l'ancien revient en dix secondes.
F
Facettes
Filtres de recherche accompagnés du nombre de résultats pour chaque valeur.
Exemple · « Taille : M (124), L (98) · Prix : moins de 10 000 FCFA (312) ».
Facteur de pic
Rapport entre le trafic au moment le plus chargé et le trafic moyen. Souvent 2 à 3, bien plus un jour de soldes.
Exemple · 100 req/s en moyenne, 300 req/s à 20 h : un facteur de pic de 3.
Fenêtre fixe
Algorithme de limitation de débit qui compte les requêtes par tranche de temps fixe (par minute, par exemple) et remet le compteur à zéro au début de chaque tranche.
Exemple · 100 requêtes autorisées entre 10 h 00 et 10 h 01 ; le compteur repart à zéro à 10 h 01.
Fenêtre glissante
Algorithme de limitation de débit qui compte les requêtes sur les N dernières secondes à chaque instant, sans les à-coups de la fenêtre fixe.
Exemple · À 10 h 00 min 30 s, on compte les requêtes reçues depuis 9 h 59 min 30 s.
Figuier étrangleur
Migration progressive : une passerelle devant l'ancien système redirige peu à peu chaque fonctionnalité vers le nouveau, jusqu'à ce que l'ancien puisse disparaître. Le nom vient d'un figuier qui pousse autour d'un arbre.
Exemple · D'abord 5 % des envois de photos vers le nouveau service, puis 50 %, puis 100 %.
File de messages
Composant qui reçoit des messages de producteurs et les distribue à des consommateurs, pour faire un travail plus tard et absorber les pics.
Exemple · RabbitMQ, Amazon SQS ou Google Pub/Sub transportent les demandes de factures de Mboa Market.
File des messages en échec
File où l'on range les messages qui échouent encore après plusieurs tentatives, pour les analyser sans bloquer les autres.
Exemple · Une facture au format invalide échoue trois fois et part dans la file des messages en échec ; une alerte prévient l'équipe.
FinOps
Pratique qui rend le coût du cloud visible et pilotable par les équipes : étiquetage des ressources, coût unitaire, revues régulières.
Exemple · Chaque mois, l'équipe revoit les cinq plus grosses lignes de la facture et le coût par commande.
I
Idempotence
Propriété d'une opération qu'on peut exécuter plusieurs fois avec le même effet qu'une seule.
Exemple · « Marquer la commande 812 comme payée » est idempotent ; « ajouter 5 000 FCFA au solde » ne l'est pas.
IDOR
Faille de contrôle d'accès : le serveur renvoie un objet désigné par son identifiant sans vérifier qu'il appartient à l'utilisateur.
Exemple · Changer /factures/1043 en /factures/1044 affiche la facture d'un autre client.
Index
Structure qui permet à une base de retrouver des lignes sans lire toute la table, comme l'index d'un livre. Il accélère les lectures et ralentit un peu les écritures.
Exemple · Un index sur client_id trouve les 20 commandes d'un client parmi 10 millions en quelques millisecondes.
Index inversé
Structure d'un moteur de recherche qui associe à chaque mot la liste des documents qui le contiennent.
Exemple · « wax » → produits 12, 48, 301 ; « pagne » → produits 12, 77, 301.
Instances réservées
Machines louées pour un ou trois ans en échange d'une forte remise, idéales pour ce qui tourne en permanence.
Exemple · La base de production, allumée jour et nuit, coûte 40 % de moins en instance réservée.
Instances spot
Machines inutilisées du fournisseur cloud, louées avec une forte remise mais qui peuvent être reprises à tout moment. Idéales pour les traitements interruptibles.
Exemple · Le recalcul nocturne des recommandations tourne sur des instances spot.
Invalidation de cache
Retirer ou mettre à jour une copie en cache quand la donnée d'origine change, pour ne pas servir une donnée périmée.
Exemple · Le vendeur baisse son prix : l'application supprime la clé produit:42 du cache.
M
Message
Petit paquet de données déposé dans une file ou un journal pour être traité par un autre programme.
Exemple · {"type": "facture", "commande": 812}.
Métriques
Mesures chiffrées suivies dans le temps : requêtes par seconde, latence, taux d'erreurs, charge.
Exemple · Une courbe du p95 du paiement minute par minute.
Microservice
Petit service indépendant, avec sa propre base, déployé et dimensionné séparément, qui communique avec les autres par le réseau.
Exemple · Le service de paiement est déployé à part, par son équipe, plusieurs fois par semaine.
Modèle client-serveur
Organisation où des clients envoient des demandes et des serveurs y répondent. C'est la base du web.
Exemple · Ton navigateur (client) demande une page, le serveur de Mboa Market (serveur) la renvoie.
Modélisation des menaces
Exercice qui liste, pour une fonctionnalité, qui pourrait l'attaquer, pour voler ou casser quoi, par où, et comment s'en protéger.
Exemple · Avant le paiement par carte : vol de cartes, fraude interne, déni de service, injection.
Moindre privilège
Ne donner à chaque personne, service ou clé que les droits strictement nécessaires à sa tâche.
Exemple · Le service d'envoi d'emails peut lire les adresses, mais pas les données de paiement.
Moins de connexions
Algorithme de répartiteur qui envoie chaque requête au serveur qui en traite le moins à cet instant.
Exemple · Un serveur occupé par trois exports PDF ne reçoit plus de requêtes tant que les autres sont libres.
Monolithe
Application unique qui contient toutes les fonctionnalités et se déploie d'un seul bloc.
Exemple · Toute la boutique Mboa Market tient dans une application, une base, un déploiement.
Monolithe modulaire
Une seule application déployée d'un bloc, mais découpée en modules aux frontières strictes, qui ne partagent pas leurs tables.
Exemple · Catalogue, commandes et livraison sont trois modules d'une même application Django.
Moteur de recherche
Logiciel spécialisé dans la recherche plein texte : il construit un index inversé, classe les résultats par pertinence et tolère les fautes de frappe.
Exemple · Elasticsearch, OpenSearch, Meilisearch, Typesense.
Motif outbox
Écrire l'événement à publier dans une table outbox, dans la même transaction que la donnée, puis le publier par un relais. Donnée et événement existent ensemble, ou pas du tout.
Exemple · La commande et l'événement « commande créée » sont enregistrés dans la même transaction.
MTBF
Mean Time Between Failures : temps moyen entre deux pannes.
Exemple · Une panne tous les 60 jours en moyenne : un MTBF de 60 jours.
mTLS
TLS mutuel : le client et le serveur présentent chacun un certificat, si bien que les deux côtés savent à qui ils parlent.
Exemple · Le service commandes ne peut appeler le service paiement qu'avec son propre certificat.
MTTR
Mean Time To Repair (ou To Recover) : temps moyen pour rétablir le service après une panne.
Exemple · Avec un retour arrière automatique, le MTTR passe de 40 à 5 minutes.
O
OAuth 2.0
Protocole qui permet à une application d'agir pour le compte d'un utilisateur, avec un jeton limité, sans jamais connaître son mot de passe.
Exemple · Un transporteur partenaire accède aux commandes d'un vendeur qui l'a autorisé, et à rien d'autre.
Observabilité
Capacité à comprendre ce qui se passe à l'intérieur d'un système à partir de ce qu'il émet : métriques, journaux et traces distribuées.
Exemple · En deux minutes, l'équipe voit que le paiement est lent à cause d'une requête SQL précise.
OpenAPI
Format standard pour décrire une API REST (routes, paramètres, réponses), à partir duquel on génère documentation, clients et tests.
Exemple · Le fichier openapi.yaml de Mboa Market est relu par l'équipe mobile avant tout développement.
OpenID Connect
Couche d'identité au-dessus d'OAuth 2.0 : elle permet de se connecter à une application avec un compte existant.
Exemple · Le bouton « Se connecter avec Google » de Mboa Market.
Orchestration
Façon de mener une saga où un service chef d'orchestre appelle chaque étape dans l'ordre et déclenche les compensations.
Exemple · Le service « commande » demande au stock de réserver, puis au paiement de débiter.
Origine
Les serveurs d'où vient le contenu de référence, que le CDN copie et met en cache.
Exemple · Le CDN redemande une image à l'origine quand sa copie a expiré.
OWASP
Fondation qui publie notamment le classement des failles de sécurité web les plus courantes (l'OWASP Top 10).
Exemple · Le contrôle d'accès cassé est en tête du classement OWASP.
P
p50 (médiane)
Latence en dessous de laquelle se trouvent 50 % des requêtes : ce que vit le client typique.
Exemple · p50 = 80 ms : une requête sur deux répond en moins de 80 ms.
p95
Latence en dessous de laquelle se trouvent 95 % des requêtes. Les 5 % restants sont plus lents.
Exemple · p95 = 300 ms : 19 requêtes sur 20 répondent en moins de 300 ms.
p99
Latence en dessous de laquelle se trouvent 99 % des requêtes : ce que vivent les clients les plus malchanceux.
Exemple · p99 = 2 s : un client sur cent attend au moins 2 secondes.
PACELC
Extension du théorème CAP : en cas de Partition, choisir entre Disponibilité et Cohérence ; Sinon (Else), choisir entre Latence et Cohérence.
Exemple · Même sans panne, lire un réplica proche est plus rapide, mais peut renvoyer une valeur un peu ancienne.
Panne en cascade
Panne qui se propage d'un composant à ceux qui en dépendent, souvent parce qu'ils s'épuisent à l'attendre.
Exemple · Les recommandations ralentissent, les serveurs web bloquent leurs threads, et le paiement tombe à son tour.
Pare-feu applicatif web (WAF)
Filtre placé devant les applications web qui bloque les attaques connues et les robots malveillants avant qu'ils n'atteignent les serveurs.
Exemple · Le WAF bloque les tentatives d'injection SQL et les rafales de connexions d'un réseau de robots.
Partie double
Principe comptable : chaque mouvement est écrit deux fois, au débit d'un compte et au crédit d'un autre, si bien que la somme des débits égale toujours celle des crédits.
Exemple · Un paiement de 5 000 FCFA : débit du portefeuille du client, crédit du compte du vendeur.
Partition (shard)
Une des bases entre lesquelles les données sont découpées lors d'un partitionnement ; chacune possède une partie des données.
Exemple · La partition 2 contient les clients dont l'identifiant tombe dans sa part de l'anneau.
Partition réseau
Coupure qui sépare un système distribué en morceaux qui ne peuvent plus communiquer, même si chacun fonctionne.
Exemple · Le lien entre les datacenters de Douala et d'Abidjan est coupé pendant 20 minutes.
Partitionnement (sharding)
Découper les données entre plusieurs bases pour répartir les écritures et le volume au-delà de ce qu'une seule machine peut porter.
Exemple · Quatre bases, chacune avec un quart des clients de Mboa Market.
Partitionnement par hachage
Choisir la partition d'une donnée en calculant une empreinte de sa clé (hash(clé) % N) : les données se répartissent uniformément.
Exemple · Le client 4821 tombe sur la partition hash(4821) % 4 = 1.
Partitionnement par plage
Répartir les données par intervalles de clé (dates, lettres…). Pratique pour lire une période, mais les données récentes se concentrent sur une partition.
Exemple · Une partition par mois : toutes les commandes de novembre tombent sur la même.
Passerelle d'API
Point d'entrée unique placé devant les services : il authentifie, applique la limitation de débit, route chaque requête vers le bon service et journalise.
Exemple · Toutes les requêtes des partenaires passent par la passerelle, qui vérifie leur clé d'API et leur quota.
PCI DSS
Norme de sécurité imposée par les réseaux de cartes bancaires à toute organisation qui stocke, traite ou transmet des données de carte.
Exemple · En ne stockant qu'un jeton du prestataire, Mboa Market réduit fortement son périmètre PCI DSS.
Percentile
Valeur en dessous de laquelle se trouve un pourcentage donné des mesures. Pour la latence, on suit le p50 (médiane), le p95 et le p99.
Exemple · Le 95e percentile des temps de réponse est de 300 ms.
Pertinence
Score qu'un moteur de recherche donne à chaque résultat pour décider de leur ordre.
Exemple · Un produit avec « wax » dans le titre passe devant un produit qui le cite dans sa description.
Point de présence
Site d'un CDN (ou d'un réseau) installé dans une ville pour être proche des utilisateurs.
Exemple · Le CDN a des points de présence à Lagos, Nairobi et Johannesburg.
Point unique de défaillance (SPOF)
Composant présent en un seul exemplaire dont la panne arrête tout le service.
Exemple · Une seule base de données, sans réplica : si elle tombe, tout Mboa Market tombe.
Position (offset)
Numéro du dernier message lu par un groupe de consommateurs dans une partition d'un journal.
Exemple · Revenir à la position d'hier matin permet de rejouer une journée d'événements.
Post-mortem
Analyse écrite après un incident : ce qui s'est passé, pourquoi, et ce que l'on change. Il est « sans reproche » : il cherche des causes, pas des coupables.
Exemple · « Cause : un TTL DNS de 24 h a retardé la bascule. Action : le passer à 60 s. »
Pré-mortem
Exercice avant un projet : imaginer qu'il a échoué dans six mois et lister pourquoi, pour traiter les risques à l'avance.
Exemple · « Le paiement a échoué car le prestataire unique est tombé le jour des soldes. »
Primaire
Dans une base répliquée, la copie qui reçoit toutes les écritures et les transmet aux réplicas.
Exemple · Les commandes s'écrivent sur le primaire de Paris, puis sont copiées sur deux réplicas.
Producteur
Programme qui dépose des messages dans une file ou un journal.
Exemple · Le service commandes produit un message « facture » pour chaque commande payée.
Purge
Supprimer une copie d'un CDN avant la fin de son TTL, pour forcer le retour à l'origine.
Exemple · Une image publiée par erreur est purgée du CDN en quelques secondes.
R
Rayon d'impact
Étendue des dégâts quand quelque chose casse : combien de clients, de services ou de pays sont touchés. On le réduit en cloisonnant.
Exemple · Avec une base par pays, une panne au Sénégal ne touche pas les clients du Cameroun.
Recherche approximative
Recherche qui retrouve les bons résultats malgré une faute de frappe ou d'orthographe.
Exemple · « pagne waxe » trouve quand même les pagnes wax.
Réconciliation
Comparer ses propres enregistrements avec ceux d'un partenaire (banque, opérateur) pour détecter et corriger les écarts.
Exemple · Chaque heure, le grand livre de Mboa Pay est comparé aux relevés de l'opérateur Mobile Money.
Redis
Base de données en mémoire, de type clé-valeur, très utilisée comme cache, stockage de sessions et compteur.
Exemple · Les paniers et les sessions de Mboa Market vivent dans Redis.
Redondance
Avoir plusieurs exemplaires d'un composant critique pour qu'une panne isolée n'arrête pas le service.
Exemple · Trois serveurs web, deux répartiteurs, une base et son réplica.
Région
Zone géographique d'un fournisseur cloud, composée de plusieurs zones de disponibilité.
Exemple · Les régions « Europe (Paris) » et « Afrique (Le Cap) ».
Région de rattachement
Région à laquelle un client est attaché : toutes ses écritures y vont, ce qui évite les conflits en actif-actif.
Exemple · Les comptes ivoiriens écrivent toujours à Abidjan, même quand le client voyage à Paris.
Registre de schémas
Service qui conserve les versions du format de chaque type d'événement et refuse les changements qui casseraient les consommateurs.
Exemple · Supprimer le champ montant de « commande payée » est refusé : trois équipes le lisent.
Répartiteur de charge
Composant qui reçoit toutes les requêtes et les distribue entre plusieurs serveurs, en écartant ceux qui ne répondent plus.
Exemple · Le répartiteur envoie les visiteurs de Mboa Market vers quatre serveurs web.
Réplica
Copie d'une base de données, tenue à jour à partir du primaire.
Exemple · Un réplica dans une autre zone peut devenir primaire si le premier tombe.
Réplica de lecture
Réplica utilisé pour servir des lectures et soulager le primaire.
Exemple · Les recherches du catalogue lisent les réplicas ; les paiements lisent le primaire.
Réplication
Copier en continu les données d'une base sur d'autres machines, pour lire davantage et survivre à une panne.
Exemple · Chaque commande écrite à Paris est copiée sur deux réplicas en moins d'une seconde.
Réplication asynchrone
Le primaire confirme une écriture sans attendre ses réplicas, qui la reçoivent juste après. Rapide, mais avec un retard de réplication et un risque de perte si le primaire tombe.
Exemple · Un réplica à Johannesburg reçoit les commandes de Paris avec environ deux secondes de retard.
Réplication synchrone
Le primaire attend qu'au moins un réplica ait reçu l'écriture avant de la confirmer : aucune perte si le primaire tombe, mais chaque écriture est plus lente.
Exemple · Le grand livre de Mboa Pay attend son réplica de l'autre zone avant de confirmer un paiement.
Réponse
Ce que le serveur renvoie au client : un code de statut et, souvent, un contenu.
Exemple · 200 OK avec la fiche du produit en JSON.
Reprise après sinistre
Ensemble des moyens et procédures pour redémarrer un service après une catastrophe (perte d'une région, d'un datacenter, de données), avec un RTO et un RPO définis.
Exemple · Deux fois par an, l'équipe bascule vraiment Mboa Market dans la région de secours.
Requête
Demande envoyée par un client à un serveur : lire une page, créer une commande…
Exemple · GET /produits/42.
Requêtes par seconde (req/s)
Nombre de requêtes qu'un système reçoit ou traite chaque seconde : l'unité du débit.
Exemple · Le serveur de Mboa Market tient 300 req/s.
Résidence des données
Obligation, souvent légale, de stocker les données de certains utilisateurs dans un pays ou une région donnée.
Exemple · Le régulateur exige que les données de paiement des clients camerounais restent au Cameroun.
REST
Style d'API où l'on manipule des ressources désignées par des URL avec les verbes HTTP : GET, POST, PUT, PATCH, DELETE.
Exemple · POST /commandes crée une commande, GET /commandes/7 la lit.
Retard de réplication
Délai entre une écriture sur le primaire et son arrivée sur un réplica.
Exemple · Un retard de 2 secondes : un réplica peut montrer l'ancienne adresse pendant 2 secondes.
Robot aspirateur
Programme qui parcourt un site automatiquement pour en copier le contenu, souvent à grande vitesse.
Exemple · Un concurrent copie tous les prix de Mboa Market chaque nuit, 1 600 pages par seconde.
Round robin (tourniquet)
Algorithme de répartiteur qui envoie les requêtes à chaque serveur à tour de rôle.
Exemple · Requête 1 → serveur A, requête 2 → B, requête 3 → C, requête 4 → A…
RPO
Recovery Point Objective : quantité de données qu'on accepte de perdre lors d'un sinistre, exprimée en temps d'écritures.
Exemple · RPO de 5 secondes : au pire, les 5 dernières secondes de commandes sont à reconstituer.
RTO
Recovery Time Objective : durée maximale de coupure acceptée avant que le service soit rétabli.
Exemple · RTO de 15 minutes : la région de secours doit servir les clients 15 minutes après la panne.
Runbook
Procédure écrite, pas à pas, pour une opération ou un incident : quoi vérifier, quoi faire, à quels seuils.
Exemple · « Si la base dépasse 90 % : couper les recommandations, puis prévenir l'astreinte. »
S
Saga
Opération découpée en transactions locales, une par service, enchaînées par des événements ; si une étape échoue, des transactions de compensation défont les précédentes.
Exemple · Commande → réservation du stock → paiement → expédition, avec une compensation pour chaque étape.
Sans état
Se dit d'un serveur qui ne garde rien entre deux requêtes : n'importe quel serveur peut répondre à n'importe quelle requête, on peut en ajouter ou en retirer à volonté.
Exemple · Les sessions sont dans Redis : redémarrer un serveur web ne déconnecte personne.
Saturation
État d'un composant arrivé au bout de sa capacité : les requêtes attendent, puis sont refusées.
Exemple · À 600 req/s pour une capacité de 300, le serveur sature et refuse la moitié des requêtes.
Scalabilité horizontale
Faire grandir un système en ajoutant des machines identiques derrière un répartiteur, plutôt qu'en agrandissant une machine.
Exemple · Passer de 3 à 12 serveurs web pour le jour des soldes.
Scalabilité verticale
Faire grandir un système en remplaçant une machine par une plus puissante. Simple, mais avec un plafond, et la machine reste unique.
Exemple · Passer d'un serveur à 8 cœurs à un serveur à 64 cœurs.
Schéma
Description de la structure des données : les tables, leurs colonnes, leurs types et leurs liens.
Exemple · La table commandes a les colonnes id, client_id, montant et statut.
Seau à jetons
Algorithme de limitation de débit : un seau de N jetons se remplit à un rythme fixe ; chaque requête consomme un jeton ; seau vide, requête refusée. Il autorise de petites rafales.
Exemple · 10 jetons, rechargés à 2 par seconde : une rafale de 10 passe, puis 2 requêtes par seconde.
Serveur
Machine ou programme qui attend des requêtes et renvoie des réponses.
Exemple · Le serveur web de Mboa Market renvoie les pages du catalogue.
Serveur de périphérie
Serveur d'un CDN placé près des utilisateurs, qui leur sert des copies du contenu sans repasser par l'origine.
Exemple · Un client de Douala reçoit les photos depuis un serveur de périphérie à Lagos.
Session
Ce qui permet de reconnaître un client connecté d'une requête à l'autre : son identité, son panier, ses préférences.
Exemple · Un cookie contient l'identifiant de session ; les données de la session sont dans Redis.
Session collante
Réglage du répartiteur qui renvoie toujours un même client vers le même serveur, parce que ce serveur garde sa session.
Exemple · Tout le campus arrive par une adresse IP et tombe sur le même serveur.
SLA
Service Level Agreement : engagement contractuel de niveau de service envers un client, avec des pénalités s'il n'est pas tenu.
Exemple · 99,9 % de disponibilité par mois pour les partenaires, sinon 10 % de remise sur la facture.
SLI
Service Level Indicator : la mesure de qualité de service, vue par le client.
Exemple · La part des paiements réussis en moins de 500 ms.
SLO
Service Level Objective : l'objectif fixé sur un SLI, sur une période donnée.
Exemple · 99,9 % des paiements réussis en moins de 500 ms, sur 28 jours glissants.
Solution de repli
Réponse de secours servie quand une dépendance ne répond pas : une valeur par défaut, une version simplifiée, un message clair.
Exemple · Sans recommandations, la page affiche « les meilleures ventes » à la place.
Source de vérité
Le stockage qui fait référence pour une donnée ; les autres en sont des copies qu'on peut reconstruire.
Exemple · La base des produits est la source de vérité ; l'index de recherche est reconstruit à partir d'elle.
SQL
Langage standard pour interroger et modifier une base relationnelle.
Exemple · SELECT * FROM commandes WHERE client_id = 42;
Stockage objet
Service qui stocke des fichiers (images, vidéos, sauvegardes) accessibles par une URL, presque sans limite de taille.
Exemple · Les photos des vendeurs sont rangées dans un bucket S3, pas sur les serveurs web.
Streaming d'événements
Publier les événements dans un journal que plusieurs consommateurs lisent en continu, chacun à son rythme.
Exemple · Chaque clic part dans Kafka ; l'analyse et la détection de fraude le lisent en quelques secondes.
Succès de cache
La réponse demandée se trouvait déjà dans le cache : elle est servie immédiatement.
Exemple · Sur 100 lectures du catalogue, 90 sont des succès de cache.
Sujet (topic)
Flux nommé d'événements d'un même type dans un journal comme Kafka, découpé en partitions.
Exemple · Le sujet « commandes-payees » a 24 partitions.
T
Taux de succès (du cache)
Part des lectures servies directement par le cache. Plus il est élevé, moins la base travaille.
Exemple · Un taux de 90 % : la base ne voit qu'une lecture sur dix.
Tempête de nouvelles tentatives
Quand tous les clients réessaient en même temps, ils multiplient la charge d'un service déjà fragile et l'empêchent de se relever.
Exemple · 200 clients réessaient trois fois chacun dès le retour du service : il reçoit quatre fois son trafic et retombe.
Test de charge
Envoyer volontairement un trafic important et réaliste au système pour mesurer ce qu'il tient avant que les vrais clients n'arrivent.
Exemple · Une semaine avant les soldes, l'équipe simule 5 000 req/s pendant une heure.
Théorème CAP
Pendant une partition réseau, un système distribué doit choisir entre la cohérence (C, ne jamais répondre faux) et la disponibilité (A, toujours répondre).
Exemple · Coupure entre deux datacenters : le paiement refuse plutôt que de risquer un double débit (C), le panier reste ouvert (A).
TLS
Protocole qui chiffre et authentifie une connexion réseau. C'est lui qui met le « S » dans HTTPS.
Exemple · Le certificat TLS de mboamarket.com prouve au navigateur qu'il parle au bon serveur.
Tokenisation
Remplacer une donnée sensible (un numéro de carte) par un jeton sans valeur, la vraie donnée restant chez un prestataire spécialisé.
Exemple · Mboa Market ne garde que tok_8f3a… ; le numéro de carte est chez le prestataire de paiement.
Traces distribuées
Enregistrement du parcours d'une requête à travers tous les services, découpé en étapes (« spans ») avec leur durée.
Exemple · La trace d'un paiement montre 40 ms dans la passerelle, 30 ms dans le service, 1,8 s chez l'anti-fraude.
Trafic sortant
Données qui sortent du cloud vers Internet. Les fournisseurs la facturent au gigaoctet, et c'est souvent une ligne surprise de la facture.
Exemple · 50 To d'images servies directement depuis les serveurs : environ 4 500 $ par mois.
Transaction
Groupe d'opérations sur une base qui réussissent toutes ensemble ou échouent toutes ensemble.
Exemple · Créer la commande, retirer l'article du stock et enregistrer le paiement, en une seule transaction.
Transaction de compensation
Opération qui défait l'effet d'une étape précédente d'une saga quand une étape suivante échoue.
Exemple · Le paiement est refusé : la compensation libère le stock réservé.
Troupeau qui charge (thundering herd)
Afflux soudain de requêtes vers une ressource au même moment, par exemple quand un cache vide renvoie toutes les lectures vers la base.
Exemple · Le cache redémarre : 2 000 lectures par seconde tombent d'un coup sur la base.
TTL
Time To Live : durée de vie d'une copie en cache ; passé ce délai, elle est jetée et rechargée à la prochaine lecture.
Exemple · Les fiches produits ont un TTL de 5 minutes dans Redis.
Twelve-Factor
Méthode en douze principes pour construire des applications adaptées au cloud : processus sans état, configuration dans l'environnement, journaux sur la sortie standard, démarrage et arrêt rapides…
Exemple · La clé de la base est lue dans une variable d'environnement, jamais écrite dans le code.