写点什么

模块五作业

用户头像
秀聪
关注
发布于: 3 小时前

s 一、用户行为建模与性能估算

1、评论微博

大部分用户在浏览微博的时候都是看微博为主,评论微博较少。因此假设有 5%的人评论微博,则评论微博的人:250 亿 * 5% = 12.5 亿

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

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

二、评论微博

1、业务特性分析

评论微博是一个写操作,但发布完评论,用户在自己本机能看到即可,其他人能否实时看到要求不高,不会写入失败即可,所以可以用消息队列和负载均衡

2、架构分析

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

3、架构设计

1)评论微博的时候依赖用户登录状态和微博,登录状态一般都是保存在分布式缓存中的,因此票评论微博的时候,需要将评论数据和微博存储在同一个存储分区中,在四层负载均衡中,网关层根据微博 ID 来负载均衡,其他层选择“轮询”或者“随机”算法。

2)业务服务器数量估算

评论微博涉及几个关键的处理:内容审核(依赖审核系统)、数据写入存储(依赖存储系统)、数据写入消息队列(依赖消息系统)。根据业务特性分析,评论微博可以使用消息队列,所以实际写入的 QPS 将小于 50K/s,假设通过消息队列可以削峰 50%,即写入的 QPS 为:25K/S,需要在因此按照一个服务每秒处理 500 来估算,完成 25K/s 的 TPS,需要 50 台服务器,加上一定的预留量,60 台服务器差不多了。


用户头像

秀聪

关注

还未添加个人签名 2013.06.20 加入

还未添加个人简介

评论

发布
暂无评论
模块五作业