Middle+ — Principal
Designing a global high-throughput messaging app
livecode
Task condition
Create a design for a globally accessible messaging system that supports group chats, can handle a massive volume of traffic, and ensures 99.99% uptime.
- Develop an architectural diagram of the messenger considering global accessibility.
- Identify key subsystems (message processing servers, media file storage, databases, caching layers, etc.).
- Develop a scaling strategy for user base growth and load.
- Ensure high availability (HA) and fault tolerance.
- Describe the message processing flow: asynchronous operations, storage, delivery.
Expected load parameters:
- 700 million unique users per month;
- 60 million active users daily;
- an average of 15 messages per day per user;
- maximum text message size — 4096 characters;
- maximum upload file size — 2 GB.