写点什么

架构实战营 - 模块二作业

作者:,lazy
  • 2022 年 4 月 10 日
  • 本文字数:636 字

    阅读完需:约 2 分钟

一、复杂度分析

截止到 2015 年 7 月,微信每月活跃用户约 5.49 亿,朋友圈每天的发表量(包括赞和评论)超过 10 亿,浏览量超过 100 亿。得益于 4G 网络的发展,以上数据仍有很快的增长,而且相对于 PC 互联网时代,移动互联网时代的峰值要来得更加凶猛。比如,2015 年元月的流量到了平时的 2 倍,而峰值则达到了平时峰值的 2 倍,相当于平时正常流量的 5 倍

2021 年初最新数据:每天有 10.9 亿用户打开微信,3.3 亿用户进行了视频通话;有 7.8 亿用户进入朋友圈,1.2 亿用户发表朋友圈,其中照片 6.7 亿张,短视频 1 亿条;有 3.6 亿用户读公众号文章,4 亿用户使用小程序。

假设用户每天浏览 10 次朋友圈,7.8 亿用户每天浏览量约 80 亿,高峰期为中午午休的 2 小时和下午下班 2 小时,由二八法则估算浏览朋友圈的 QPS 为:78 亿*0.8 / (4*3600) ≈ 40W;假设人均每天发 1 条朋友圈,同理可估算出发朋友圈的 TPS 为:1.2 亿 / (4*3600) ≈ 1W;点赞、评论假设人均每天 5 次,TPS 为:5W 左右;节假日按正常流量的 5 倍计算,发朋友圈的 TPS 将达到 5W,点赞评论 TPS 将达到 25W,浏览 QPS 将达到 200W。


1.1 总体分析

  • 业务复杂度:低,核心业务包括发朋友圈、点赞、评论、浏览朋友圈

  • 质量复杂度:高,由公开数据可见,微信朋友圈的质量复杂度在于海量的数据存储和高 QPS

1.2 各场景高性能复杂度分析

  • 发朋友圈

  • 看朋友圈

  • 点赞 &评论

二、架构方案



设计理由:

  • 由于数据量、请求量大,用户来自不同地区,所以采用多数据中心架构

  • 静态资源用 OSS 存储,用 CDN 加速,动态资源用 redis 缓存,减少 DB 访问

  • mysql 分库分表减轻单库存储和访问压力

用户头像

,lazy

关注

还未添加个人签名 2018.09.08 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营-模块二作业_#架构实战营_,lazy_InfoQ写作平台