System design of WhatsApp/Message/WeChat(4S)
设计一个即时聊天系统
Scenario: 都是设计什么功能?
登陆注册
通讯录
两个用户互相发消息
多个用户互相发消息
用户的在线状态
其他高级功能:历史消息和多设备登录
然后要设计的多牛批?
1B MAU 750M DAU
Average QPS and peak QPS
为了储存相关信息 每天会新增多少使用空间?
service:
Message service:信息的管理
real-time service:信息的推送
storage:
我们肯定需要message table.

但是如果我们想差一些什么东西 搞个条件搜索 但是where语句十分复杂会导致SQL效率低下,如果是多人聊天的话 这种表还是需要变的。而且还有一些其他的功能需要实现 因此我们设计了新的信息更完善的表

所以我们选择储存结构的话 可以选用NoSQL或者SQL

Scale:
详见《scale step of system design of whatsApp》

浙公网安备 33010602011771号