0. 系统设计面试指南

  • 英文版原版下载地址:

单位换算表

1B  = 8 bit         byte
1KB = 1024bytes     Kilobyte  
1MB = 1024KB        Megabyte   //百万字节 兆
1GB = 1024MB        Gigabyte   //亿字节,又称“千兆”
1TB = 1024GB        Terabyte   //万亿字节,太字节
1PB = 1024TB        Petabyte   // 千万亿字节,拍字节
1EB  =1024PB        Exabyte    //百亿亿字节,艾字节
...
1GB = 10^8 bytes   
1千万 = 10  million
1亿   = 100 million
10亿  = 1   billion

概念

QPS 和 TPS

  • QPS(Query Per Second) :服务器每秒可以执行的查询次数;

  • TPS(Transaction Per Second) :服务器每秒处理的事务数(这里的一个事务可以理解为客户发出请求到收到服务器的过程);

吞吐量

吞吐量指的是系统单位时间内系统处理的请求数量。

一个系统的吞吐量与请求对系统的资源消耗等紧密关联。请求对系统资源消耗越多,系统吞吐能力越低,反之则越高。

TPS、QPS都是吞吐量的常用量化指标。

  • QPS(TPS) = 并发数/平均响应时间(RT)

  • 并发数 = QPS * 平均响应时间(RT)

系统活跃度

PV(Page View)

访问量, 即页面浏览量或点击量,衡量网站用户访问的网页数量;在一定统计周期内用户每打开或刷新一个页面就记录1次,多次打开或刷新同一页面则浏览量累计。UV 从网页打开的数量/刷新的次数的角度来统计的。

UV(Unique Visitor)

独立访客,统计1天内访问某站点的用户数。1天内相同访客多次访问网站,只计算为1个独立访客。UV 是从用户个体的角度来统计的。

DAU(Daily Active User)

日活跃用户数量。

MAU(monthly active users)

月活跃用户人数。

举例:

某网站 DAU为 1200w, 用户日均使用时长 1 小时,RT为0.5s,求并发量和QPS。

平均并发量 = DAU(1200w)* 日均使用时长(1 小时,3600秒) /一天的秒数(86400)=1200w/24 = 50w

真实并发量(考虑到某些时间段使用人数比较少) = DAU(1200w)* 日均使用时长(1 小时,3600秒) /一天的秒数-访问量比较小的时间段假设为8小时(57600)=1200w/16 = 75w

峰值并发量 = 平均并发量 * 6 = 300w

QPS = 真实并发量/RT = 75W/0.5=100w/s

Last updated