2024年一文2000字搞懂高并发性能指标:QPSTPSRT并发数吞吐量

QPS:QueriesPerSecond是衡量信息检索系统(例如搜索引擎或数据库)在一秒钟内接收到的搜索流量的一种常见度量。该术语在任何请求-响应系统中都得到更广泛的使用,更正确地称为每秒请求数(RPS:RequestPerSecond)。

高性能、高并发、高可用(简称“三高”)要求的系统必须注意其QPS,才能知道何时扩容系统以处理更多请求。

QPSvsTPS:QPS基本类似于TPS,但是不同的是,对于一个页面的一次访问,形成一个TPS;但一次页面请求,可能产生多次对服务器的请求,服务器对这些请求,就可计入“QPS”之中。如,访问一个页面会请求服务器2次,一次访问,产生一个“T”,产生2个“Q”。

来自维基百科的解释如下:

在非常普通的意义上,术语每秒事务数是指每秒由某些实体执行的原子动作的数量。从更严格的角度来看,DBMS供应商和用户社区通常使用该术语来表示每秒执行的数据库事务数。最近,该术语已被用来描述一种加密货币的交易率,例如运行比特币区块链的分布式网络。能够适应实际交易量的交易速率的发展是加密货币技术研究的重要领域。

并发数是指系统同时能处理的请求数量,这个也反应了系统的负载能力。

并发意味着可以同时进行多个处理。并发在现代编程中无处不在,网络中有多台计算机同时存在,一台计算机上同时运行着多个应用程序。

系统的吞吐量(承压能力)和处理对CPU的消耗、外部接口、IO等因素紧密关联。单个处理请求对CPU消耗越高,外部系统接口、IO速度越慢,系统吞吐能力越低,反之越高。

理解了上面三个指标的意义之后,就能推算出它们之间的关系:

1、单线程QPS公式:QPS=1000ms/RT对同一个系统而言,支持的线程数越多,QPS越高。假设一个RT是80ms,则可以很容易的计算出QPS,QPS=1000/80=12.5。

多线程场景,如果把服务端的线程数提升到2,那么整个系统的QPS则为2*(1000/80)=25,可见QPS随着线程的增加而线性增长,那QPS上不去就加线程呗,听起来是这个道理,但是往往现实并非如此。

2、QPS和RT的真实关系

我们想象中的QPS、RT关系如下,

实际的QPS、RT关系如下,

上面是我整理的配套资源,这些资源对于软件测试的的朋友来说应该是最全面最完整的备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你。

THE END
1.知识总结第七章进程调度:介绍操作系统算运行时间我们介绍了调度的基本思想,并开发了两类方法。第一类(SJF,STCF)是运行最短的工作,从而优化周转时间(但对响应时间不利)。第二类(RR)是交替运行所有工作,从而优化响应时间(但对周转时间不利)。 补充 等待时间 等待时间是书上没有的内容,结果期中考试考了,无语子 https://blog.csdn.net/qq_51684393/article/details/124738761
2.操作系统笔记处理机调度知识腾讯云开发者社区响应时间:有快的响应时 (3) 作业周转时间 注:_ 代表下标 作业i的周转时间:T_i=T_ei - T_si 其中T_ei为作业 i 的完成时间,T_si 为作业 的提交时间 平均周转时间: 作业i的周转时间:T_i=T_wi+T_ri T_wi 主要指作业 i 由后备状态到执行状态的等待时间,它不包括作业进入执行状态后的等待时间,T_rihttps://cloud.tencent.com/developer/article/1638048
3.性能指标响应时间并发量…聊聊性能优化的衡量指标所以说,优化性能不只是提升系统的响应速度。 这里,优化性能也并不是一味的优化吞吐量和优化响应速度,而是在吞吐量和响应速度之间找到一个平衡点,使用有限的服务器资源来更好的提升用户体验。 响应时间 对于响应时间来说,有两个非常重要的衡量指标。那就是:平均响应时间和百分位数。 https://blog.51cto.com/u_15214399/5145013
4.性能测试——测试常见的指标前言 今天想和大家来聊聊性能测试常见的指标,我在这里也不喜欢说废话我们直接开始吧。 性能测试最基本要考虑以下几点: 1、时间特性,主要指的是软件产品的事物响应时间(用户发出请求到收到应答的这段时间) 2、资源利用率,包括:cpu、内存、网络、硬盘、虚拟内存(https://maimai.cn/article/detail?fid=1734377879&efid=5Xmas7LbG80oAJx_HoxMFA
5.操作系统(2)处理机调度算法进程同步平均等待时间:(0 + 24 + 27)/3 = 17 周转时间:P1 = 24; P2 = 27; P3 = 30 平均周转时间:(24 + 27 + 30)/3 = 27 短作业优先 每个进程有一个CPU时间(运行时间)。利用进程的CPU时间的长度作为调度的依据,每次总是将CPU时间最短的进程调度到CPU上运行。 https://www.jianshu.com/p/7d1cffa975c9
6.活动监视器MicrosoftLearn等待应用程序的平均计数 在最近的示例间隔期间的某典型时刻等待此等待类别中的一个或多个资源的任务数。 累计等待时间(秒) 自从SQL Server 在实例上上次启动以来,或自从 DBCC SQLPERF 在实例上运行以来,任务等待此等待类别中的一个或多个资源的时间总量(秒)。 https://technet.microsoft.com/zh-cn/library/cc879320(v=sql.105).aspx
7.性能测试具体有些指标?各个指标意义及参考的合理范围?合理范围:对于在线实时交易,互联网企业通常要求在500毫秒以下,金融企业1秒以下为佳,保险企业3秒以下为佳,制造业5秒以下为佳。具体可接受的响应时间取决于用户对该响应时间的接受程度。 2.吞吐量(Throughput): 含义:指单位时间内系统能处理的事务或请求的数量。 https://www.spasvo.com/Company/news_show.asp?id=2047