QPS = req/sec = 请求数/秒
【QPS计算PV和机器的方式】
QPS统计方式 [一般使用 http_load 进行统计]
QPS = 总请求数 / ( 进程总数 * 请求时间 )
QPS: 单个进程每秒请求服务器的成功次数
单台服务器每天PV计算
公式1:每天总PV = QPS * 3600 * 6
公式2:每天总PV = QPS * 3600 * 8
服务器计算
服务器数量 = ceil( 每天总PV / 单台服务器每天总PV )
【峰值QPS和机器计算公式】
原理:每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间
公式:( 总PV数 * 80% ) / ( 每天秒数 * 20% ) = 峰值时间每秒请求数(QPS)
机器:峰值时间每秒QPS / 单台机器的QPS = 需要的机器
问:每天300w PV 的在单台机器上,这台机器需要多少QPS?
答:( 3000000 * 0.8 ) / (86400 * 0.2 ) = 139 (QPS)
问:如果一台机器的QPS是58,需要几台机器来支持?
答:139 / 58 = 3
关于并发用户数和QPS,自己一直被这两个概念纠结,阅读了一下相关资料,总结如下:
并发用户数和QPS两个概念没有直接关系,但是如果要说QPS时,一 定需要指明是多少并发用户数下的QPS,否则豪无意义,因为单用户数的40QPS和20并发用户数下的40QPS是两个不同的概念。前者说明该应用可以在 一秒内串行执行40个请求,而后者说明在并发20个请求的情况下,一秒内该应用能处理40个请求,当QPS相同时,越大的并发用户数,代表了网站并发处理 能力越好。
对于当前的web服务器,其处理单个用户的请求肯定戳戳有余,这个时候会存在资源浪费的情况(一方面该服务器可能有多个cpu,但是只处理单个 进程,另一方面,在处理一个进程中,有些阶段可能是IO阶段,这个时候会造成CPU等待,但是有没有其他请求进程可以被处理)。而当并发数设置的过大时, 每秒钟都会有很多请求需要处理,会造成进程(线程)频繁切换,反正真正用于处理请求的时间变少,每秒能够处理的请求数反而变少,同时用户的请求等待时间也 会变大,甚至超过用户的心理底线。
所以在最小并发数和最大并发数之间,一定有一个最合适的并发数值,在并发数下,QPS能够达到最大。但是,这个并发并非 是一个最佳的并发,因为当QPS到达最大时的并发,可能已经造成用户的等待时间变得超过了其最优值,所以对于一个系统,其最佳的并发数,一定需要结合 QPS,用户的等待时间来综合确定。
图1 并发用户数,QPS,用户平均等待时间(响应时间关系图)
上面这张图是应用其他人的关于并发用户数,QPS,用户平均等待时间的一张关系图,对于实际的系统,也应该是对于不同的并发数,进行多次测试,获取到这些数值后,画出这样一张图出来,以便于分析出系统的最佳并发用户数。
相关推荐
给DBA与运维工程师的QPS,PV和需要部署机器计算
在做db基准测试的时候,qps,tps 是衡量数据库性能的关键指标。...在对数据库的性能监控上经常会提到QPS和TPS这两个名词,下面就分别简单的分享一下关于MySQL数据库中的QPS和TPS的意义和计算方法。 1 QPS:
本文来自于csdn,文章主要从系统吞度量要素,系统吞吐量评估,软件性能测试的基本概念和计算公式等等方面来介绍。一.系统吞度量要素:一个系统的吞度量(承压能力)与request对CPU的消耗、外部接口、IO等等紧密关联...
MYSQL QPS TPS全揭秘,很多DBA都不知道的这个概念,呵呵
awk测试从nginx查询qps的测试日志
基于ELK的nginx-qps监控解决方案.docx
java高级面试架构篇:实际业务系统中的峰值、TPS、QPS,并行压力计算。
王亚雷-Twitter 千万 QPS 分布式系统的架构设计和高效运维
用于WEB服务器端开发,介绍如何有效提升QPS、RT
QPS、TPS、PV、UV、GMV、IP、RPS等各种名词,外行看起来很牛X,实际上每个程序员都是必懂知识点。下面我来一一解释一下。 QPS Queries Per Second,每秒查询数。每秒能够响应的查询次数。 QPS是对一个特定的查询...
sysbench基准测试并数据统计--TPS、QPS、TPMC及响应时间,让你第一时间了解数据库的运行情况。
QPS 高性能 qps 计数器安装$ npm install qps用法 var QPSCounter = require ( 'qps' ) ;var counter = new QPSCounter ( ) ;// plus onecounter . plus ( ) ;// current qpscounter . get ( ) ;应用程序接口...
QPS289Setup 2.04
基于cms的高并发低延时的gc参数,生产实战参数,各位看官烦请点赞
统计最近N秒内的QPS值(包括每秒select,insert等值) mysql> select variable_name,sum(per_sec) as qps from (select straight_join lower(gs0.variable_name) as variable_name, (gs1.variable_value – gs0....
对qps以及接口的平均耗时进行统计 特点 轻量: 共219KB(代码量约300行), 无需安装,加压即可使用 低侵入: 基于日志文件进行统计,无需修改原程序 使用说明 ...
mysql数据库三个关键性能指标-TPS-QPS-IOPS,可以实时监控数据库运行情况,以便及时处理问题。