WhatsApp Messaging System Design
System design for a real-time messaging app like WhatsApp. Covers WebSocket connections via load balancer, Chat Server with Redis Pub/Sub for cross-server messaging, DynamoDB for chat and message storage, inbox pattern for offline delivery, S3 blob storage for media, and cleanup service for message expiration.
whatsappmessagingsystem designwebsocketsreal-time
Requirements
Functional
- Start group chats with multiple participants
- Send and receive messages
- Receive messages sent while offline (up to 30 days)
- Send and receive media attachments
Non-Functional
- Low latency message delivery (<500ms)
- Guarantee message delivery
- High throughput (billions of users)
- Messages not stored unnecessarily
Author
Published
February 16, 2026
Last updated February 16, 2026