架构师实战营 模块二作业 微信朋友圈高性能架构分析
. 1. 分析一下微信朋友圈的高性能复杂度
【作业要求】
1)对照模块 2 讲述的复杂度分析方法,分析微信朋友圈的复杂度;
2)针对各个复杂度,画出你的架构设计方案(无需做备选方案,只需要最终的方案即可);
3)给出你的架构方案中关键的设计理由。
4)3~5 页 PPT 即可,涵盖复杂度分析、架构设计、设计理由。
1、业务架构图
2、需求分析
a. 发朋友圈
假设每人平均发 2 条朋友圈,每天 80%的朋友圈是在 20%的时间里发的,即约 1.9 亿条朋友圈是在 5 小时内发的,平均约 1 万条/秒 发朋友圈,峰值 TPS 设为 5 倍则为 5 万条/秒。
b. 看朋友圈
每天有 7.8 亿人进入朋友圈,假设每人查看 10 条,利用二八原则,即每天 80%的朋友圈是在 20%的时间查看的,也就是 7.8 X 10 X 0.8 = 62 亿是在 5 小时内看的,平均每秒约等于 25 万条/秒。
c. 评论
假设每天平均发 2 条朋友圈,平均每条朋友圈 3 条评论,每天 80%的评论是在 20%的时间里发的,即约 1.9 亿条朋友圈是在 5 小时内发的,平均 2.3 万条/秒,峰值假设为 5 倍则为 16 万条/秒。
3、复杂度分析
复杂度分析有质量复杂度和业务复杂度两个维度。朋友圈的质量复杂度高,因为微信日活用户已经超过 2 亿,业务复杂度也高。
4、业务复杂度分析
5、高性能复杂度分析
6、朋友圈整体架构图
评论