架构训练营 模块二作业
2021 微信公开课 PRO 微信事业群总裁张小龙透露,每天有 10.9 亿用户打开微信,3.3 亿用户进行了视频通话;有 7.8 亿用户进入朋友圈,1.2 亿用户发表朋友圈,其中照片 6.7 亿张,短视频 1 亿条;有 3.6 亿用户读公众号文章,4 亿用户使用小程序。
一. 复杂度分析
访问集中在中午休息时间 12-13 以及下班后时间 18-00,但微信业务量可能较大估算完的数值可能需要翻倍考虑
发表约 10k 的 TPS
查看约 60k 的 QPS
点赞可能为查看的 80%,约 50k 的 TPS
评论可能为查看 20%的人,约 12kTPS
二. 架构设计
发表功能考虑到图片、短视频等内容,除了 MySQL 之外可能需要 FastDFS 才存储
点赞、评论
因为评论与点赞相对来说比较即时,或许可以先考虑 Redis 能即时读取之后再同步于资料库(可能使用 rabbitmq 相关的伫列)
查看
查看朋友圈除了資料讀取外,需要讀取一些圖片以及點贊數等,架構的部分可能是上面的合體
三. 架构设计的理由
通 Nginx 作负载均衡,将请求至不同服务器上
基于写少读多的情况下,采用 MySQL
由于请求量很大,可以使用 Redis 来做缓存,例如:点赞数评论等
评论