Conception d’un système de chat

Diagramme13 nœudsIngénierie · Architecture de chatCréé à partir d'un seul prompt
Aperçu en lecture seule

Le prompt

Créez un diagramme de conception de système pour une application de chat

Créez votre version

À propos du cadre

Suivez les composants d’un service de chat

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

Ce que vous obtenez

  • Onze composants d’architecture nommés avec douze connexions
  • Deux serveurs WebSocket et un serveur d’API REST derrière un répartiteur de charge
  • Redis Pub/Sub et Kafka présentés comme des composants de messagerie distincts
  • PostgreSQL, S3, Elasticsearch et un composant de notifications push
Diagramme

Conception d’un système de chat

system-designchatwebsocketarchitecturetech

✦ Free preview · Sign in to use

Questions fréquentes

Questions courantes

Cela montre-t-il la séquence complète de distribution des messages ?

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.

Les écritures dans la base de données sont-elles effectuées directement par Redis dans cette architecture ?

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.

Où les pièces jointes et les notifications sont-elles représentées ?

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.

Conception d’un système de chat

Gratuit pour commencer. Aucune carte de crédit requise.

Free preview · Sign in to use