写点什么

架构实战营 - 模块 2- 作业

发布于: 2021 年 04 月 17 日


网上查阅资料显示:

在微信公开课 Pro 直播演讲中,微信创始人张小龙披露微信最新数据:每天有 1.9 亿人打开微信,3.3 亿人进行视频通话,7.8 亿人进入朋友圈,1.2 亿人发朋友圈,朋友圈每天有 1 亿条视频内容,3.6 亿公众号,4 亿用户使用小程序。朋友圈每天有 1 亿条视频内容。每天有 3.6 亿人进入公众号,4 亿用户使用小程序。


资料分析:

与朋友圈相关

1,每天有 7.8 亿人进入朋友圈,

2,每天有 1.2 亿人发朋友圈

3,朋友圈每天有 1 亿条视频内容


朋友圈功能分析:


复杂度分析:

朋友圈应该属于质量复杂度高,业务复杂度低的区间。


使用情况分析:

一天 24 小时,根据资料显示人每天最少要睡四个小时才能够维持体力,故扣除 4 小时必要睡眠时间,那么一天有 20 个小时是醒着的,再扣除 8 小时工作时间,那么剩余时间是 12 小时,可能都有人在使用朋友圈。


朋友圈性能复杂度分析:

1,看朋友圈:7.8 亿/12/3600=18055.55 QPS

2,发朋友圈:1.2 亿/12/3600=2777.77 TPS

3,评论朋友圈:假定每条朋友圈有 5 个人评论,2777.77*5=13888.85 TPS

4,点赞朋友圈:假定每条朋友圈有 10 个人点赞,2777.77*10=27777.7 TPS


整体分析:


看朋友圈分析:


说明:

1,进程模型依据团队技术栈选型。

2,海量连接与海量请求,网络模型选用 Reactor。

3,

3.1,朋友圈里很多图文,视频,且内容发布可能会进行修改,故先选用缓存数据库计算,最后再使用关系型数据库进行存储。

3.2,因为图片,视频较多,故考虑使用单独的图文,视频服务器处理与存储图文,视频。

3.3,朋友圈个人数据模型可以考虑文档型数据模型。

4,因为集群环境下的海量请求,故需要负载均衡。

5,数据量大的情况需要使用数据分片与分库分表。


发朋友圈分析:

与看朋友圈相同。


评论朋友圈分析:

说明:

1,单机计算高性能部分可依赖于发朋友圈和看朋友圈的架构。

2,存储部分可先选用缓存数据库计算,最后使用关系型数据库进行存储。

3,评论和点赞不涉及图片内容和视频内容,故不需要图文服务器。

4,数据量大的情况需要使用数据分片与分库分表。



点赞朋友圈分析:

与评论朋友圈相同。


单机房分析:


用户头像

还未添加个人签名 2020.09.27 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营 - 模块 2- 作业