TPS和QPS

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


1.TPS

Transactions Per Second,意思是每秒事务数。一个事务是指客户端向服务器发送请求然后服务器做出反应的过程,具体的事务定义,可以是一个接口、多个接口、一个业务流程等等。以单接口定义为事务举例,每个事务包括了如下3个过程:

  • (1)向服务器发请求
  • (2)服务器自己的内部处理(包含应用服务器、数据库服务器等)
  • (3)服务器返回结果给客户端

如果每秒能够完成 N 次以上3个过程,TPS 就是 N。

TPS 是软件测试结果的测量单位。我们在进行服务性能压测时,接口层面最常关注的是最大 TPS 以及接口响应时间,个人理解 TPS 可以指一组逻辑相关的请求,而服务整体处理能力取决于处理能力最低模块的TPS值。

2.QPS:

Queries Per Second,意思是每秒查询率。指一台服务器每秒能够响应的查询次数,用于衡量特定的查询服务器在规定时间内所处理流量多少,主要针对专门用于查询的服务器的性能指标,

  • 比如dns,它不包含复杂的业务逻辑处理,比如数据库中的每秒执行查询sql的次数。QPS
    只是一个简单查询的统计显然,不能描述增删改等操作,显然它不够全面,所以不建议用 QPS 来描述系统整体的性能;
  • QPS 基本类似于 TPS,但是不同的是,对于一个事务访问,会形成一个 " T ";但一次 " T "
    中,可能产生多次对服务器的请求,服务器对这些请求,就可计入 QPS 之中。

3.区别:

(1)如果是对一个查询接口压测,且这个接口内部不会再去请求其它接口,那么 TPS = QPS,否则,TPS ≠ QPS

(2)如果是容量场景,假设 N 个接口都是查询接口,且这个接口内部不会再去请求其它接口,QPS = N * TPS

相关推荐
海边捡石子2 分钟前
从零设计一个通用智能电话平台:FreeSWITCH + ESL + AI 实战架构
人工智能·架构·webrtc
这个DBA有点耶1 小时前
期货 CTP 系统 Oracle RAC 迁移国产库实战:读写分离架构设计与性能对标
数据库·架构·dba
喵个咪4 小时前
GoWind Kanban 拆解:看板拖拽背后——LexoRank、乐观锁与尽力而为广播
后端·架构·go
喵个咪4 小时前
GoWind OA 拆解:用 3000 行 Go 写一个够用的审批工作流引擎
后端·架构·go
喵个咪4 小时前
GoWind Ledger 拆解:单式记账的余额一致性——confirm、补偿,以及没进事务的那些缝隙
后端·架构·go
喵个咪4 小时前
GoWind Shop 拆解:订单超时关单——一个事务里的四联动
后端·架构·go
喵个咪4 小时前
GoWind ERP 拆解:一个 ERP 里的三种一致性等级
后端·架构·go
Eloudy4 小时前
全文 - 第03章 - 架构概述 - InfiniBand Specification release 1.4
架构·gpu
神也畏惧菠萝6 小时前
Coze 工作流数据库 Day06:架构与高级循环控制的深度技术分析
数据库·架构·llm·coze·coze数据库·数据库流程结构
灵动的艺术6 小时前
如一 Agent 架构解读(二):上下文工程——为模型构造它唯一的现实
人工智能·架构·agent