架构训练营模块 2 作业
分析一下微信朋友圈的高性能复杂度
【作业要求】
对照模块 2 讲述的复杂度分析方法,分析微信朋友圈的复杂度;
针对各个复杂度,画出你的架构设计方案(无需做备选方案,只需要最终的方案即可);
给出你的架构方案中关键的设计理由。
3~5 页 PPT 即可,涵盖复杂度分析、架构设计、设计理由。
IT 之家 2021 年 1 月 19 日发布消息:
1、每天有 7.8 亿人进入朋友圈
2、1.2 亿人发朋友圈
3、朋友圈每天有 1 亿条视频内容
设计理由
1、采用 DNS 将不同区域的用户负载到不同的服务器,以防止入口在高峰期出现瓶颈
2、每个区域部署多台应用服务器,提高服务性能
3、数据存储采用分库分表,解决单库,单表性能问题
4、多媒体资源单独使用服务器管理,采用用户 ID 进行 Hash
5、redis 是主要缓存朋友圈发布的最近信息
6、采用 Kafka 消息队列,用于订阅朋友发布的消息,存储消息 ID 即可
评论