Créez un diagramme de conception de système pour une application de chat
À propos du cadre
Cet exemple d’architecture contient onze composants et douze connexions. Un client mobile ou web atteint un répartiteur de charge, qui se connecte à deux serveurs WebSocket et à un serveur d’API REST. Les deux serveurs WebSocket se connectent à Redis Pub/Sub, tandis que le serveur REST se connecte à Kafka.
Les flèches restantes relient Redis à PostgreSQL, et Kafka à PostgreSQL, S3, Elasticsearch et aux notifications push. Il s’agit de liens schématiques : l’exemple ne représente pas les workers applicatifs chargés de la persistance, de l’indexation, de la gestion des médias ou de l’envoi des notifications. La présence, l’ordre des messages et le comportement lors des reconnexions ne sont pas non plus spécifiés.
Utilisez ce diagramme pour structurer une discussion de conception autour du parcours d’un message. Ajoutez les services et les accusés de réception nécessaires pour expliquer ce qui se passe avant que l’expéditeur ne voie une confirmation de réussite, ce que reçoit un destinataire hors ligne et comment un message renvoyé est traité. Précisez les exigences de charge et de distribution avant de choisir ces détails.
Contenu inclus
Conception d’un système de chat
✦ Free preview · Sign in to use
Questions fréquentes
Non. Il montre les connexions entre les composants, sans détailler l’ordre des envois, les accusés de réception ni les étapes de nouvelle tentative. Demandez une vue séquentielle d’un scénario précis, par exemple l’envoi d’un message à un utilisateur hors ligne.
L’exemple trace une flèche de Redis Pub/Sub vers PostgreSQL, mais ne précise pas la logique applicative sous-jacente. Ajoutez un service de persistance et définissez ses responsabilités avant l’implémentation.
S3 Media Store et Push Notification sont tous deux reliés à Kafka dans l’exemple. L’initiation des téléversements, l’accès aux médias, les fournisseurs de notifications et les échecs de livraison ne sont pas représentés.
Gratuit pour commencer. Aucune carte de crédit requise.