System design

Expert

Projet final : des paiements multi-régions

Conçois de zéro l'API de paiement d'un portefeuille européen : 8 000 lectures de solde et 1 000 paiements par seconde au pic, 99,95 % de disponibilité, aucun paiement perdu, et une notification push pour chaque paiement. À 16:00, Paris tombe pour deux heures, et à 17:00 un nœud de base de données plante alors que Paris est toujours hors ligne. Budget : 25 000 dollars par mois.

Les utilisateurs sont à Paris ; Francfort est à 9 ms. Un paiement peut être accepté d'abord et réglé quelques secondes plus tard. Le prestataire push répond en environ 120 ms, accepte 5 000 appels par seconde et échoue de temps en temps ; chaque notification doit arriver exactement une fois.

Ce que ton design doit atteindre

  • Disponibilité ≥ 99,95 %
  • Latence p99 < 300 ms
  • Effets dupliqués = 0
  • Tâches en arrière-plan échouées = 0
  • Écritures perdues = 0
  • Facture mensuelle < 25 000 $

Ce que tu vas maîtriser