Le defi

Dans une plateforme educative, les notifications en temps opportun sont essentielles. Notre systeme original etait base sur le polling — le client verifiait les nouvelles notifications toutes les 30 secondes.

Architecture

  • WebSocket Gateway : Un serveur Node.js avec Socket.io
  • Bus d'evenements : Un systeme pub/sub base sur Redis
  • Service de notifications : Service backend de creation et routage
  • Angular Signal Store : Store reactif cote client

Mise a l'echelle

Nous utilisons l'adaptateur Redis pour Socket.io pour synchroniser les evenements entre plusieurs instances.

Le nouveau systeme livre les notifications en moins de 100ms en moyenne — une amelioration de 300x.