阿杰 👍 你问的这些都是性能测试和系统性能指标里最常见的几个概念,我给你逐一解释清楚,并帮你对比它们的关系:


1. 吞吐量(TPS:Transactions Per Second)

  • 定义:系统每秒能够处理的事务(Transaction)数量。
  • 事务:一个用户请求可能会涉及多步操作(如登录 → 查询数据库 → 返回结果),这些组成一个“事务”。
  • 意义:衡量系统整体处理能力,常用于银行、支付等业务场景。
  • 例子:一个支付系统,每秒能完成 100 笔订单支付,则 TPS = 100。

2. QPS(Queries Per Second)

  • 定义:系统每秒能处理的请求(Request/Query)数量。
  • 区别:QPS 是对“请求”的统计,TPS 更强调“完整事务”。
  • 关系:通常 QPS ≥ TPS,因为一个事务可能包含多个请求。
  • 例子:电商系统中,用户打开商品页发起 5 个查询请求(商品详情、评论、推荐、库存、价格),这 5 个请求只算 1 次事务,但会产生 5 次 QPS。

3. 并发数(Concurrency)

  • 定义:某一时刻同时存在的请求/事务数,即“同时在线的执行数”。
  • 体现:是用户“同时操作”的规模。
  • 关系:并发数越高,对系统的 TPS/QPS 和 RT 的压力就越大。
  • 例子:有 1000 个用户同时在提交订单,此时并发数 = 1000。

4. 响应时间(RT:Response Time)

  • 定义:从用户发出请求到系统返回结果所需的时间。
  • 单位:毫秒(ms)或秒(s)。
  • 意义:反映系统的性能体验,RT 越低用户体验越好。
  • 例子:你在淘宝下单,从点击“支付”到页面显示“支付成功”用了 2 秒,这就是 RT=2s。

5. 四者关系总结

  • QPS / TPS:吞吐能力指标(数量维度)。
  • 并发数:压力大小指标(规模维度)。
  • RT:用户体验指标(时间维度)。
  • 联系公式(近似关系)

并发数≈QPS×RT

👉 举例:

  • 某系统平均 RT = 0.5 秒
  • 每秒请求数 QPS = 200
  • 那么并发数 ≈ 200 × 0.5 = 100

说明系统平均有 100 个请求同时在处理。