写点什么

模块五作业

用户头像
Geek_fc100d
关注
发布于: 刚刚

【计算性能预估】

由于绝大部分微博用户看微博的对象是大 V 和明星,因此我们假设平均一条微博观看人数有 100 次,每人对每条微博都进行评论,则微博评论的次数为:2.5 亿 * 100 = 250 亿。大部分人微博评论的时间段和发微博的时间段基本重合,因此微博评论的平均 QPS :250 亿 * 60% / (4*3600) = 1000K/s。

 

非热点事件

【业务特性分析】

微博评论是一个典型的写操作,因此不能用缓存,可以用负载均衡。

【架构分析】

用户量过亿,应该要用多级负载均衡架构,覆盖 DNS -> F5 -> Nginx -> 网关的多级负载均衡。

【架构设计】

1. 负载均衡算法选择

考虑到后续需要按照发微博来读取微博评论,因此选择“hash”算法。

2. 业务服务器数量估算

微博评论存入 Redis Cluster,按照一个服务每秒 50000 估算,完成 1000K/s 的 TPS,需要 20 台服务器,预留 20%,需要 25 台服务器。

 

热点事件

【业务特性分析】

热点事件发生后,绝大部分都是针对热点事件发生的那一条微博进行评论。

【架构设计】

热点事件导致流量打到一个缓存上,可以为评论的缓存 key 增加随机数,让数据分开存储。

用户头像

Geek_fc100d

关注

还未添加个人签名 2019.09.28 加入

还未添加个人简介

评论

发布
暂无评论
模块五作业