Concevoir un service de bout en bout
Trois conceptions pas à pas, comme en entretien d'architecture : un raccourcisseur d'adresses, un fil d'actualité, une messagerie. Pour chacune : les besoins, les ordres de grandeur calculés, l'API, le stockage, la montée en charge et les pannes, avec le raisonnement au dos.
- 34 cartes
- 3 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Un raccourcisseur d'adresses
- Un fil d'actualité
- Une messagerie instantanée
Quelques cartes du deck
Besoins · Quelles sont les deux opérations essentielles d'un raccourcisseur d'adresses ?
Voir la réponse
Créer un lien court pour une longue adresse, et rediriger un lien court vers sa longue adresse
On redirige bien plus souvent qu'on ne crée : on compte souvent 100 lectures pour une écriture, ce qui guide toute la conception.
Ordres de grandeur · 100 millions de liens créés par mois : combien de créations par seconde en moyenne ?
- Environ 4
- Environ 400
- Environ 4 000
- Environ 40
Voir la réponse
Environ 40
100 000 000 ÷ (30 × 86 400 s) ≈ 39 par seconde.
Panne · Comment empêcher qu'on utilise le service pour diffuser des liens malveillants ?
Voir la réponse
Vérifier les adresses contre des listes de sites malveillants et limiter le débit de création par compte
La vérification bloque les liens connus ; la limitation empêche de créer des milliers de liens d'un coup.
Ordres de grandeur · Avec 100 lectures pour une écriture et environ 40 créations par seconde, combien de redirections par seconde ?
- Environ 40
- Environ 400
- Environ 4 000
- Environ 400 000
Voir la réponse
Environ 4 000
40 × 100 = 4 000 redirections par seconde en moyenne, et plus aux heures de pointe.
Besoins · Que doit faire un fil d'actualité, au minimum ?
Voir la réponse
Publier un message, et afficher à chacun les messages récents des comptes qu'il suit
Tout le défi est de construire vite, pour des millions de personnes, un fil propre à chacune.
Ordres de grandeur · On garde les liens 5 ans, à environ 500 octets chacun. Quel volume de stockage ?
- Environ 3 Go
- Environ 300 Go
- Environ 3 To
- Environ 300 To
Voir la réponse
Environ 3 To
100 millions × 12 × 5 = 6 milliards de liens ; × 500 octets = 3 × 10¹² octets, soit 3 To.