基本概念介绍
- 并发数
- 定义:指系统同时处理的请求数量或同时在线的用户数量。
- 计算方式:一般通过性能测试工具模拟不同数量的用户同时向系统发送请求,观察系统响应情况,找到系统能够稳定处理的最大并发用户数。也可根据系统业务场景和用户行为模式估算,假设一个系统在高峰时段预计有 2000 个用户同时在线,且每个用户每 4 分钟进行一次操作,可估算并发数为 2000/4=500 个。
- 吞吐量
- 定义:指系统在单位时间内处理的请求数量或数据量(吞吐量根据业务类型,一般有两种计算方法,基于网络流量的吞吐量以及基于业务请求数的吞吐量)。
- 计算方式:吞吐量 = 传输的总数据量 / 传输时间。例如,在 10 分钟内系统传输了 50GB 的数据,则吞吐量 = 50GB/(1060)≈0.083GB / 秒。若以请求数衡量,在 5 分钟内系统处理了 3000 个请求,则吞吐量 = 3000/(560)=10 请求 / 秒。
- QPS(Queries Per Second)
- 定义:每秒查询率,即每秒能够处理的查询请求数量。
- 计算方式:QPS = 总查询请求数 / 统计时间(秒)。如在 2 分钟内系统处理了 7200 个查询请求,则 QPS = 7200/(2*60)=60。
- TPS(Transactions Per Second)
- 定义:每秒事务数,一个事务通常指完成一个完整的业务操作,可能包含多个数据库操作等。
- 计算方式:TPS = 总事务数 / 统计时间(秒)。比如在 4 分钟内系统完成了 2400 个事务,那么 TPS = 2400/(4*60)=10。
典型数据值
- 并发数
- 小型网站或应用:并发数可能在几十到几百之间,如小型企业内部办公系统,并发数可能在 30-150 左右。
- 中型网站或应用:并发数一般在几百到几千,例如中型在线教育平台在上课高峰时,并发数可能达到 800-3000。
- 大型互联网平台:像微信、支付宝这样的大型平台,在高峰时段并发数可能达到几十万甚至上百万。
- 吞吐量
- 小型系统:以数据量计算可能在几 MB / 秒到几十 MB / 秒,以请求数计算可能在几到几十请求 / 秒,如小型文件存储系统,吞吐量可能在 5-30MB / 秒。
- 中型系统:以数据量计算一般在几十 MB / 秒到几百 MB / 秒,以请求数计算在几十到几百请求 / 秒,如中型企业的业务数据传输系统,吞吐量可能在 50-200MB / 秒。
- 大型系统:以数据量计算可以达到几 GB / 秒甚至更高,以请求数计算在几千请求 / 秒以上,如大型视频直播平台,吞吐量可能在 2-10GB / 秒。
- QPS
- 简单的数据库查询系统:QPS 可能在几百到几千,如小型企业的客户信息查询系统,QPS 可能在 300-1500。
- 中等规模的 Web 应用:QPS 一般在 1000-5000 左右,比如普通的论坛网站。
- 大型高并发系统:QPS 可以达到数万甚至更高,如大型搜索引擎,QPS 可能在 80000 以上。
- TPS
- 小型事务处理系统:TPS 可能在几到几十,如小型诊所的挂号系统,TPS 可能在 3-15。
- 中型业务系统:TPS 一般在几十到几百,例如中型企业的库存管理系统,TPS 可能在 30-300。
- 大型分布式系统:TPS 可以达到几千甚至更高,像大型电商平台的订单处理系统,在高峰时 TPS 可能在 8000 以上。