在术语中解释了TPS是每秒事务数,但是事务时要靠虚拟用户做出来的,假如1个虚拟用户在1秒内完成1笔事务,那么TPS明显就是1。如果某笔业务响应时间是1ms,那么1个用户在1秒内能完成1000笔事务,TPS就是1000了。如果某笔业务响应时间是1s,那么1个用户在1秒内只能完成1笔事务,要想达到1000TPS,至少需要1000个用户。因此可以说1个用户可以产生1000TPS,1000个用户也可以产生1000TPS,无非是看响应时间快慢。
QPS,QueriesPerSecond意思是每秒查询率,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。TPS是TransactionsPerSecond的缩写,也就是事务数/秒。在术语中解释了TPS是每秒事务数,但是事务时要靠虚拟用户做出来的,假如1个虚拟用户在1秒内完成1笔事务,那么TPS明显就是1;如果某笔业务响应时间是1ms,那么1个用户在1秒内能完成1000笔事务,TPS就是1000了;如果某笔业务响应时间是1s,那么1个用户在1秒内只能完成1笔事务,要想达到1000TPS,至少需要1000个用户;因此可以说1个用户可以产生1000TPS,1000个用户也可以产生1000TPS,无非是看响应时间快慢。TPS (Transaction per second),每秒事务数。计算公式:TPS = 事务的数量 / 执行总时间。
例如:10秒内执行了2个事务,那么TPS = 2 / 10 = 02 ,那么每个事务的响应时间就为5s。
QPS(Queries per second),每秒查询数。计算公式:QPS = 每日的访问量 / 每日 = 当日请求总数 / (60s 60min 24h )
日PV = QPS (60s 60min 24h ) = QPS 86400
如果我们要根据一个固定的日活跃PV数,一台机器有固定的QPS值,来计算所需要的服务器数量的话,需要知道下面两个计算概念:
峰值QPS = 每天的总PV数 08 / 86400 02 —— 这个含义为每天80%的访问量集中在20%的时间里。
服务器数量 = 峰值QPS / 单台机器的QPS
假设有5000000的日PV,那么峰值QPS = 5000000 08 / 86400 02 = 231
假设一台机器的固定QPS为40,那么就需要231/40 = 6(个)服务器。
(对 TPS 和 QPS 的初步了解,欢迎各位读者补充和指正)当TPS曲线如果变化缓慢或者有平坦的趋势,说明服务器开始出现瓶颈。解析:tps 曲线会变平坦的原因是因为系统处理事务的线程数往往是固定的一个数值。(一般是由程序设定或者服务器配置决定),假设响应时间是固定的一个值时,那么每秒 中系统能够处理的事务数是固定的数值。不会因为压力的增大,TPS也会一直增大。实际上,响应时间并不是一个固定的值,而是随着压力变大,响应时间往往会 增加。那么,实际上,系统最大的TPS值,往往会比根据基准值估算出来的TPS要小。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)