模块二作业 - 朋友圈高性能复杂度分析
背景
据查,截止到 2021 年 1 月 19 日,微信对外公布的数据中提到每天有 7.8 亿用户进入朋友圈,1.2 亿用户发表朋友圈,其中照片 6.7 亿张,短视频 1 亿条。
分析
基于以上数据,假设平均活跃时间为早上 6 点到晚上 12 点,即 18 小时,每条朋友圈平均包括 4 张照片或 1 个视频,平均被 8 个人看过/点赞/评论,分析如下:
照片发布 TPS: 6.7 亿/(60*60*18)≈1w,峰值*5,即 5w;
视频发布 TPS: 1.2 亿/(60*60*18)≈1.9w,峰值*5,即 9.5w;
照片查看 QPS: 6.7 亿*8/(60*60*18)≈8w,峰值*5,即 40w;
视频查看 QPS: 1.2 亿*8/(60*60*18)≈1.5w,峰值*5,即 7.5w;
点赞 TPS: (6.7 亿/4+1.2 亿)/(60*60*18)≈4.3w,峰值*5,即 21.5w;
评论 TPS: (6.7 亿/4+1.2 亿)/(60*60*18)≈4.3w,峰值*5,即 21.5w;
综上分析,微信朋友圈属于业务线比较短,并且不涉及复杂计算,反而对存储的读写要求比较高:
整体架构
理由
1.由上分析可以看到朋友圈业务中数据的读写量比较大,建议利用不同类型数据库的读写差异,将数量的读写分离;
2.社交类产品实时性要求比较高,因此建议采用两地多机房机制;
版权声明: 本文为 InfoQ 作者【圈圈gor】的原创文章。
原文链接:【http://xie.infoq.cn/article/41b3052ff06dff9591f87f110】。未经作者许可,禁止转载。
评论