Crea un diagramma di progettazione per un'applicazione di chat
Sul framework
Questo esempio di architettura contiene undici componenti e dodici collegamenti. Un client mobile o web raggiunge un bilanciatore di carico, che si collega a due server WebSocket e a un server API REST. Entrambi i server WebSocket si collegano a Redis Pub/Sub, mentre il server REST si collega a Kafka.
Le frecce rimanenti collegano Redis a PostgreSQL e Kafka a PostgreSQL, S3, Elasticsearch e alle notifiche push. Si tratta di collegamenti schematici: l'esempio non mostra i worker applicativi responsabili della persistenza, dell'indicizzazione, della gestione dei media o dell'invio delle notifiche. Inoltre, non specifica la gestione della presenza, dell'ordine dei messaggi e della riconnessione.
Usa il diagramma per strutturare una discussione progettuale sul percorso di un singolo messaggio. Aggiungi i servizi e le conferme necessari per spiegare cosa accade prima che il mittente visualizzi l'esito positivo, cosa riceve un destinatario offline e come viene gestito un messaggio ritentato. Definisci i requisiti di scalabilità e consegna prima di scegliere questi dettagli.
Cosa include
Progettazione di un'applicazione di chat
✦ Free preview · Sign in to use
Domande frequenti
No. Mostra i collegamenti tra i componenti, ma non include invii in sequenza, conferme o tentativi. Chiedi una vista sequenziale di uno scenario specifico, ad esempio l'invio a un utente offline.
L'esempio traccia una freccia da Redis Pub/Sub a PostgreSQL, ma non specifica la logica applicativa alla base. Aggiungi un servizio di persistenza e definiscine le responsabilità prima dell'implementazione.
Nel campione, S3 Media Store e Push Notification sono entrambi collegati a Kafka. Non sono rappresentati l'avvio degli upload, l'accesso ai media, i provider di notifiche né gli errori di consegna.
Gratuito per iniziare. Nessuna carta di credito richiesta.