架构实战课程 模块二作业
作业 :分析一下微信朋友圈的高性能复杂度
【作业要求】
1. 对照模块 2 讲述的复杂度分析方法,分析微信朋友圈的复杂度。
2. 针对各个复杂度,画出你的架构设计方案(无需做备选方案,只需要最终的方案即可)。
3. 给出你的架构方案中关键的设计理由。
4. 3~5 页 PPT 即可,涵盖复杂度分析、架构设计、设计理由。
【作业内容】
1.分析微信朋友圈的复杂度
微信朋友圈的复杂度,如下图所示:
1)业务复杂度分析:微信朋友圈作为一个社交功能的重要载体,其本质也是一个 UGC 社区,但是是一个相对比较封闭的 UGC 社区。而 UGC 社区的用户行为主要通过用户参与度来衡量,用户的参与度主要有内容原创、阅读、转发分享、点赞、评论、收藏、打赏等行为。而由于微信的社交功能决定的用户之间的强关联性,用户还会有点开并阅读其他用户的朋友圈的行为,再者随着微信公众号、服务号以及小程序的推出,用户为了自我价值的实现或者工作的需要,用户还会有阅读这些公众号的内容的行为。从以上分析可知微信朋友圈的业务复杂度很高。
2)质量复杂度分析:在微信公开课 Pro 直播演讲中,微信创始人张小龙披露微信最新数据:每天有 1.9 亿人打开微信,3.3 亿人进行视频通话,7.8 亿人进入朋友圈,1.2 亿人发朋友圈,朋友圈每天有 1 亿条视频内容,3.6 亿公众号,4 亿用户使用小程序。朋友圈每天有 1 亿条视频内容。每天有 3.6 亿人进入公众号,4 亿用户使用小程序。虽然没有透露每秒具体的 TPS 和 QPT,但是我们推算出微信朋友圈质量复杂度是高。
2.架构设计方案
1)微信朋友圈高性能复杂度应对思路
2)微信朋友圈高性能方案 - 整体架构
评论