写点什么

模块二作业

用户头像
心怀架构
关注
发布于: 刚刚

一.复杂度分析

1.数据背景

(1)每天有约 7.8 亿用户访问朋友圈

(2)每天有 1.2 亿用户发朋友圈

2.数据分析

根据二八原则,假设有 0.96(1.2 * 0.8)亿用户集中在 8:00~10:00、12:00~14:00、18:00~20:00 发朋友圈,可以推算期间的平均 TPS 约为 4.5K(9600 万/6/60/60),向上取整 5K;同理,推算 7.8 亿用户进入朋友圈的 QPS 约为 28.9K(78000 万 *0.8/6/60/60),取整为 30K;同理,点赞或评论的 TPS 约为 6K(进入朋友圈人数 30K *0.2)

二.方案架构设计

1.整体架构

从推测数据可以看出,朋友圈的访问性能最高,点赞/评论和发布的性能指标接近。所以,朋友圈业务可以拆分成浏览服务、点赞/评论服务和发布服务,同时朋友圈、评论、点赞数据分开存储。


2.浏览朋友圈架构

使用高性能存储方式提高查询性能(redis 集群/本地缓存),使用负载均衡分配请求提高集群支撑 QPS 能力。


3.点赞/评论与发布架构

这两个服务性能指标相近,且业务记录的内容相似,所以架构设计相近。区别点在于:发布可以发送内容为文字、视频、图片;评论内容为文字、表情;点赞只是记录用户一个点击行为。

写服务一定要关注对数据持久层的保护,要具备削峰能力。


用户头像

心怀架构

关注

还未添加个人签名 2020.05.26 加入

还未添加个人简介

评论

发布
暂无评论
模块二作业