本文介绍如何根据您当前系统的压测需求设置目标并发或者目标RPS。

背景信息

并发用户

指的是现实系统中同时操作业务的用户,在性能测试工具中一般称为虚拟用户(Virtual User)。并发用户这个概念一般是从客户侧评估的角度出发,但是不便于服务端的一些容量评估和高可用评估。

并发用户与注册用户、在线用户不同。注册用户一般指的是数据库中存在的用户。在线用户只是“挂”在系统上,对服务器不产生压力。但并发用户一定会对服务器产生压力。

TPS

Transaction Per Second, 每秒事务数,是衡量系统性能的一个重要指标。在PTS中,为了直接评估TPS,也可以采用RPS(Request Per Second,每秒请求数)设置压测流量的大小。RPS模式更适合容量规划和作为限流管控的参考依据。

示例

假如1个虚拟用户在1秒内完成1个事务,那么TPS就是1。要想达到1000 TPS至少需要1000个用户。如果某个业务响应时间是1毫秒,那么1个用户在1秒内能完成1000个事务,TPS也是1000。

因此1个用户可以产生1000 TPS,1000个用户也可以产生1000 TPS,主要看响应时间的快慢。

设置目标并发和TPS

评估并发用户数

  • 线上系统:

    在线上系统的高峰时刻,选取一定周期内使用系统的人数,这些人数可以认为是在线用户数。而并发用户数则取在线用户数的10%。例如,在1小时内使用系统的用户数为10000,则建议取1000作为并发用户数。

  • 未上线系统或新上线系统:

    由于没有历史数据可供参考,因此只能通过业务发展趋势来预判各项指标。

评估TPS(RPS)

  • 线上系统:
    • 已有系统:可选取高峰时刻,在一定时间内(如3分钟~10分钟),获取系统总业务量,计算单位时间(秒)内完成的笔数,乘以2~5倍作为峰值的TPS,例如峰值3分钟内处理订单18万笔,平均TPS是1000,峰值TPS可以是2000~5000。
    • 新系统:没有历史数据作参考,建议通过业务部门进行评估。
  • 未上线系统或新上线系统:

    由于没有历史数据可供参考,因此只能通过业务发展趋势来预判各项指标。