浅谈QPS、TPS、并发用户数、吞吐量的关系
转载自品略图书馆 http://www.pinlue.com/article/2020/04/2113/0410210087906.html
1、QPS
QPS Queries Per Second
是每秒查询率 ,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准, 即每秒的响应请求数,也即是最大吞吐能力。
2、TPS
TPS Transactions Per Second
也就是事务数/秒。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,
3、QPS和TPS区别
个人理解如下:
1、Tps即每秒处理事务数,包括了
用户请求服务器
- 服务器自己的内部处理
- 服务器返回给用户
这三个过程,每秒能够完成N个这三个过程,Tps也就是N;
2、Qps基本类似于Tps,但是不同的是,对于一个页面的一次访问,形成一个Tps;但一次页面请求,可能产生多次对服务器的请求,服务器对这些请求,就可计入“Qps”之中。
例子:
例如:访问一个页面会请求服务器3次,一次放,产生一个“T”,产生3个“Q”
例如:一个大胃王一秒能吃10个包子,一个女孩子0.1秒能吃1个包子,那么他们是不是一样的呢?答案是否定的,因为这个女孩子不可能在一秒钟吃下10个包子,她可能要吃很久。这个时候这个大胃王就相当于TPS,而这个女孩子则是QPS。虽然很相似,但其实是不同的。
4、并发数
并发数(并发度):指系统同时能处理的请求数量,同样反应了系统的负载能力。这个数值可以分析机器1s内的访问日志数量来得到
5、吐吞量
吞吐量是指系统在单位时间内处理请求的数量,TPS、QPS都是吞吐量的常用量化指标。
系统吞吐量要素
一个系统的吞吐量(承压能力)与request(请求)对cpu的消耗,外部接口,IO等等紧密关联。
单个request 对cpu消耗越高,外部系统接口,IO影响速度越慢,系统吞吐能力越低,反之越高。
重要参数
QPS(TPS),并发数,响应时间
QPS(TPS):每秒钟request/事务 数量
并发数:系统同时处理的request/事务数
响应时间:一般取平均响应时间
关系
QPS(TPS)=并发数/平均响应时间
一个系统吞吐量通常有QPS(TPS),并发数两个因素决定,每套系统这个两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换,内存等等其他消耗导致系统性能下降。
6、PV
PV(Page View):页面访问量,即页面浏览量或点击量,用户每次刷新即被计算一次。可以统计服务一天的访问日志得到。
7、UV
UV(Unique Visitor):独立访客,统计1天内访问某站点的用户数。可以统计服务一天的访问日志并根据用户的唯一标识去重得到。响应时间(RT):响应时间是指系统对请求作出响应的时间,一般取平均响应时间。可以通过Nginx、Apache之类的Web Server得到。
8、DAU
DAU(Daily Active User),日活跃用户数量。常用于反映网站、互联网应用或网络游戏的运营情况。DAU通常统计一日(统计日)之内,登录或使用了某个产品的用户数(去除重复登录的用户),与UV概念相似
9、MAU
MAU(Month Active User):月活跃用户数量,指网站、app等去重后的月活跃用户数量
10、系统吞吐量评估
我们在做系统设计的时候就需要考虑CPU运算,IO,外部系统响应因素造成的影响以及对系统性能的初步预估。
而通常情况下,我们面对需求,我们评估出来的出来QPS,并发数之外,还有另外一个维度:日pv。
通过观察系统的访问日志发现,在用户量很大的情况下,各个时间周期内的同一时间段的访问流量几乎一样。比如工作日的每天早上。只要能拿到日流量图和QPS我们就可以推算日流量。
通常的技术方法:
1、找出系统的最高TPS和日PV,这两个要素有相对比较稳定的关系(除了放假、季节性因素影响之外)
2、通过压力测试或者经验预估,得出最高TPS,然后跟进1的关系,计算出系统最高的日吞吐量。B2B中文和淘宝面对的客户群不一样,这两个客户群的网络行为不应用,他们之间的TPS和PV关系比例也不一样。
11、软件性能测试的基本概念和计算公式
软件做性能测试时需要关注哪些性能呢?
首先,开发软件的目的是为了让用户使用,我们先站在用户的角度分析一下,用户需要关注哪些性能。
对于用户来说,当点击一个按钮、链接或发出一条指令开始,到系统把结果已用户感知的形式展现出来为止,这个过程所消耗的时间是用户对这个软件性能的直观印 象。也就是我们所说的响应时间,当相应时间较小时,用户体验是很好的,当然用户体验的响应时间包括个人主观因素和客观响应时间,在设计软件时,我们就需要 考虑到如何更好地结合这两部分达到用户最佳的体验。如:用户在大数据量查询时,我们可以将先提取出来的数据展示给用户,在用户看的过程中继续进行数据检 索,这时用户并不知道我们后台在做什么。
用户关注的是用户操作的相应时间。
其次,我们站在管理员的角度考虑需要关注的性能点。
1、 响应时间2、 服务器资源使用情况是否合理3、 应用服务器和数据库资源使用是否合理4、 系统能否实现扩展5、 系统最多支持多少用户访问、系统最大业务处理量是多少6、 系统性能可能存在的瓶颈在哪里7、 更换那些设备可以提高性能8、 系统能否支持7×24小时的业务访问
再次,站在开发(设计)人员角度去考虑。
1、 架构设计是否合理2、 数据库设计是否合理3、 代码是否存在性能方面的问题4、 系统中是否有不合理的内存使用方式5、 系统中是否存在不合理的线程同步方式6、 系统中是否存在不合理的资源竞争
浅谈QPS、TPS、并发用户数、吞吐量的关系相关推荐
- php 吞吐率,QPS/TPS/并发量/吞吐量/吞吐率的概念
QPS: 每秒钟处理完请求的次数:注意这里是处理完.具体是指发出请求到服务器处理完成功返回结果.可以理解在server中有个counter,每处理一个请求加1,1秒后counter=QPS. TPS: ...
- QPS/TPS/并发量/系统吞吐量
1.QPS QPS Queries Per Second 是每秒查询率 ,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准, 即每秒的响应请求数,也即是 ...
- 阿里云云盾抗下全球最大DDoS攻击(5亿次请求,95万QPS HTTPS CC攻击) ,阿里百万级QPS资源调度系统,一般的服务器qps多少? QPS/TPS/并发量/系统吞吐量...
阿里云云盾抗下全球最大DDoS攻击(5亿次请求,95万QPS HTTPS CC攻击) 作者:用户 来源:互联网 时间:2016-03-30 13:32:40 安全流量事件https互联网资源 摘要: ...
- 浅谈服务器http并发数的影响因素
目录 浅谈服务器http并发数的影响因素 一.问题的提出 1.1.讨论此问题的假设(基本条件) 1.2.计量时间 二.讨论影响因素 2.1.首先要评估客户端应用(下文统称App)本身 2.2.单位时间 ...
- php hasmany,浅谈laravel orm 中的一对多关系 hasMany
个人对于laravel orm 中对于一对多关系的理解 文章表 article,文章自然可以评论,表 comment 记录文章的评论,文章和评论的关系就是一对多,一篇文章可以有多个评论. 在 comm ...
- 借“文化进化”浅谈自然科学与人文社科的辩证关系
借"文化进化"浅谈理工科与人文社科的辩证关系 在<全球通史>中,作者斯塔夫里阿诺斯提出了很令我眼前一亮的观点:和所以物种一样,人类进化史是由基因进化始终贯穿的.基因进化 ...
- QPS/TPS/并发量/系统吞吐量的概念
2019独角兽企业重金招聘Python工程师标准>>> 我们在日常工作中经常会听到QPS/TPS这些名词,也会经常被别人问起说你的系统吞吐量有多大.这个问题从业务上来讲,可以理解为应 ...
- QPS/TPS/并发量/系统吞吐量概念和公式
1.概念 我们在日常工作中经常会听到QPS/TPS这些名词,也会经常被别人问起说你的系统吞吐量有多大.一个系统的吞度量(承压能力)与request对CPU的消耗.外部接口.IO等等紧密关联,单个req ...
- 阿里P8架构师谈:高并发与多线程的关系、区别、高并发的技术方案
什么是高并发? 高并发(High Concurrency)是一种系统运行过程中遇到的一种"短时间内遇到大量操作请求"的情况,主要发生在web系统集中大量访问收到大量请求(例如:12 ...
最新文章
- Shutil.move PermissionError: [WinError 82] 无法创建目录或文件,以及PermissionError: [Errno 13] Permission denied
- python定义一个字典并遍历字典中的键和值_python字典操作总结
- python批量读取grib_windows python读取grib2数据
- 很好的阻止了事件的发生_请定好您的闹钟,八月,夜空中将发生这13件超酷的天文事件...
- 经典C语言程序100例之二三
- Java SpringAOP学习之How is beforeMethodAdvice called
- 烂泥:【解决】-bash: ftp: command not found
- .NET 运行时设置
- 电脑公司win11旗舰版32位镜像v2021.07
- Linux 命令解压缩
- WebAssembly 技术汇总
- 5 万条微信语音升入太空;阿里京东否认停止社招;雷军开怼华为 | 极客头条...
- 开课吧课堂之如何创建自己的异常子类
- 游戏开发之运算符重载(C++基础)
- JAVA生成pdf文件
- 清华大学朱小燕教授做客雷锋网沙龙,分享 NLP 和人工智能的那些事儿| AAAI 2017...
- python注释是什么意思_python中注释的意思是什么
- 计算机系统与配置要求,电脑系统以及Adobe Audition的版本配置要求-喜马拉雅
- 一条sql语句查出男生前5名和女生前五名
- linux使用tmux后台运行程序
热门文章
- 【渝粤教育】国家开放大学2019年春季 2502学前儿童发展心理学 参考试题
- 【C/C++】C语言基础知识【第二版】
- 影碟管理系统c语言小学期,大连东软小学期C语言项目学生成绩管理系统代码.docx...
- 蓝桥杯2017赛题‘瓷砖样式’
- Nginx服务器js加载不全,报206 (Partial Content)错误
- 第9期 ServiceStage应用管理与运维平台,让业务创新“快人一步”
- 分销电影票(Java笔记-多线程)
- WEB | 文件上传漏洞
- Porting Kit for mac(游戏移植工具)
- 红外遥控——基于STC15W4K32S4