Real-time Chat System Design
Stage 1 of 5
Challenge Context
A startup is launching a new messaging application and needs to build the core messaging functionality. Users need to be able to send and receive text messages in real-time without significant delays. The initial version should focus on reliable 1-on-1 messaging with basic delivery confirmation.
As the Technical Lead, you've been tasked with addressing this challenge. The CTO and CPO have outlined the following requirements:
Design a system that enables users to send and receive text messages in real-time
Implement basic message status tracking (sent, delivered, read)
Provide message history when users open a conversation
Ensure message delivery within 500ms under normal network conditions
References & Resources
Components
Client
Server
Load Balancer
Cache
CDN
Database
Message Queue
Custom Component
Press enter or space to select a node.You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.