随着互联网技术和应用的发展,我们的生活中需要越来越多的高并发系统。而评估这些高并发系统性能水平的重要指标包括 QPS 、TPS 、RT 和吞吐量。
- QPS
QPS 是英文 Queries Per Seconds 的缩写,翻译成中文即每秒请求数。通常情况下,它指的是处理请求的能力,即表示一个服务器在单位时间内处理的请求数,单位为次/秒。通过 QPS 可以大致估计出一个系统在不同配置情况下所能承受的最大访问流量,是用来评价后端服务端性能的指标之一。在负载较高时,针对单台服务器可能无法满足业务需求,可以利用负载均衡等方式进行扩容解决问题。
- TPS
TPS 是 Transactions Per Second 的缩写,翻译成中文为每秒事务数。与 QPS 相比,TPS 耧更底层,并不仅仅代表着查询或者请求的数量,而是表示一个系统在单个事物的执行状态下,即每一次完整的请求处理完成,所能完成的次数,其含义更接近于系统的实际运作效率。一般在 OLTP(联机事物处理)系统中使用 TPS 进行评估,能有效评价系统性能的实际效果。
- RT
RT 是 Response Time 的缩写,翻译成中文为响应时间。它指的是在单次请求的情况下,从发出该请求到收到服务器发送的响应所需要的时间,包括网络传输时间、处理时间、服务端队列等待时间以及客户端接收数据所需的时间等。尤其在如今的互联网行业中,快速响应是非常重要的。最理想的响应时间应当在毫秒级别。
- 吞吐量
吞吐量,在大多数时候与 QPS 或 TPS 相关,但更接近于对系统数据传输和处理能力指标的建立。用吞吐量来描述一个系统的性能可以更准确地表示该系统在给定时间范围内所容纳的请求的并发量,并且还能反映出系统的稳定性和留有余地的容量。就像一条公路要看宽度,不仅要考虑车的数量,也要考虑道路的宽度是否可以让所有车辆同时行进。
在实际应用中,这些指标也都相互交织、联系并互相影响。例如:QPS 和 TPS 越大说明系统处理越多量的请求或事务,那么会影响到响应时间 RT 的表现,同时由于拥挤导致请求堆积很容易出现吞吐量下降等问题。所以在评估一个高并发系统时,不能只看其中某一项性能指标,需要多维度地进行评估分析,才能更好地衡量系统的可用性和性能,理解其实际处理能力,并且根据需要进行优化和调整。