写点什么

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

作者:michael
  • 2022 年 5 月 12 日
  • 本文字数:594 字

    阅读完需:约 2 分钟

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

用户行为建模和性能估算

【用户量】

2020.9 月月活 5.11 亿,日活 2.24 亿(参考《微博 2020 用户发展报告》)。

【微博评论】

由于微博评论的频率介于发微博和看微博之间,初步预估每人每天发表 20 条评论,则微博每天的评论发送量约为 50 亿条。

大部分人评论微博的时间段和发微博的时间段基本重合,因此评论微博的 TPS 计算如下:

50 亿*60%/(4*3600)=200K/s


架构设计

【业务特性分析】

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

【架构分析】

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

【架构设计】

1. 负载均衡算法选择

微博评论的时候依赖登录状态和评论的主贴 ID,登录状态一般都是保存在分布式缓存中的,因此发微博的时候,将请求发送给任意服务器都可以,这

里选择“轮询”或者“随机”算法。

2. 业务服务器数量估算

微博评论同样涉及几个关键的处理:内容审核(依赖审核系统)、数据写入存储(依赖存储系统)、数据写入缓存(依赖缓存系统),因

此按照一个服务每秒处理 500 来估算,完成 200K/s 的 TPS,需要 400 台服务器,加上一定的预留量,预估为 450 台服务器。



热点事件时的高可用计算架构

【架构设计分析】

在热点事件下,微博评论会在短时间内暴增,评论数量会集中在热点帖子下方,因此,可以参考热帖的转发架构设计,考虑对“评论微博”限流,由于评论能够调动用户的情绪和增加互动,因此尽量少丢弃请求,考虑用“漏桶算法”。



发布于: 刚刚阅读数: 3
用户头像

michael

关注

还未添加个人签名 2020.11.14 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营 - 模块五 - 作业_michael_InfoQ写作社区