01
Battleground · Case Study 1
Design a real-time messaging system at 500M DAU — persistent WebSocket connections, guaranteed delivery, offline queuing, message ordering, read receipts, and inbox at scale.
System Requirements
Functional requirements, back-of-envelope estimation, NFRs, and API design.
FREstimationNFRAPI
Open →
Real-Time Comms
Why HTTP polling fails, WebSocket mechanics, connection lifecycle, and the connection server model.
WebSocketLong PollingConnection Server
Open →
Base Architecture
High-level system diagram — connection servers, message router, storage layer, and notification path.
ArchitectureMessage RouterStorage
Open →
Deep Dives
Database, message ordering, offline delivery, message status, inbox, caching, peak traffic, and fault isolation.
DynamoDBOrderingOffline QueueThree Ticks
Open →
Observability
SLIs and SLOs for a messaging system, latency measurement, availability tracking, alerting, and error budgets.
SLI / SLOAlertingError Budget
Open →
Final Design
The complete architecture after all deep dives — every component justified, every tradeoff resolved, full system diagram.
Final DiagramFull Architecture
Open →