1.事务(Transaction)
“从⽤户发送请求->web server接受到请求,进⾏处理-> web server向DB获取数据->⽣成⽤户的object(页⾯),返回给⽤户”的过程,⼀般的响应时间都是针对事务⽽⾔的。
2.请求响应时间
从客户端发起的⼀个请求开始,到客户端接收到从服务器端返回的响应结束,这个过程所耗费的时间(“秒”或者“毫秒”)⼀个公式可以表⽰:响应时间=⽹络响应时间+应⽤程序响应时间。标准可参考国外的3/5/10原则: (1)在3秒钟之内,页⾯给予⽤户响应并有所显⽰,可认为是“很不错的”; (2)在3~5秒钟内,页⾯给予⽤户响应并有所显⽰,可认为是“好的”;
(3)在5~10秒钟内,页⾯给予⽤户响应并有所显⽰,可认为是“勉强接受的”; (4)超过10秒就让⼈有点不耐烦了,⽤户很可能不会继续等待下去;
参考标准:不同⾏业不同业务可接受的响应时间是不同的,⼀般情况,对于在线实时交易的系统:
互联⽹企业:500毫秒以下,例如淘宝业务10毫秒左右。⾦融企业:1秒以下为佳,部分复杂业务3秒以下。保险企业:3秒以下为佳。制造业:5秒以下为佳。
时间窗⼝:不同数据量结果是不⼀样的,⼤数据量的情况下,2⼩时内完成。
3.并发⽤户数
严格意义上的并发,即所有的⽤户在同⼀时刻做同⼀件事情或者操作,这种操作⼀般指做同⼀类型的业务。
⼴义范围的并发:这种并发与前⼀种并发的区别是,尽管多个⽤户对系统发出了请求或者进⾏了操作,但是这些请求或者操作可以是相同的,也可以是不同的。对整个系统⽽⾔,仍然是有很多⽤户同时对系统进⾏操作
可以看出,后⼀种并发是包含前⼀种并发的。⽽且后⼀种并发更接近⽤户的实际使⽤情况,因此对于⼤多数的系统,只有数量很少的⽤户进⾏“严格意义上的并发”。
对于WEB性能测试⽽⾔,这2种并发情况⼀般都需要进⾏测试,通常做法是先进⾏严格意义上的并发测试。严格意义上的⽤户并发⼀般发⽣在使⽤⽐较频繁的模块中,尽管发⽣的概率不是很⼤,但是⼀旦发⽣性能问题,后果很可能是致命的。
⽤户并发数量: ⼀种错误观点是把并发⽤户数量理解为使⽤系统的全部⽤户的数量,理由是这些⽤户可能同时使⽤系统;
还有⼀种⽐较接近正确的观点是把在线⽤户数量理解为并发⽤户数量。实际上在线⽤户也不⼀定会和其他⽤户发⽣并发,例如正在浏览⽹页的⽤户,对服务器没有任何影响,但是,在线⽤户数量是计算并发⽤户数量的主要依据之⼀。三者关系: 系统⽤户数 >= 在线⽤户数 >= 并发⽤户数
4.TPS(transactionper second)
每秒钟系统能够处理的交易或者事务的数量.它是衡量系统处理能⼒的重要指标.⼀般情况下,系统处理能⼒⼜⽤以下⼏个指标来度量:
HPS(Hits Per Second):每秒点击次数,单位是次/秒。
TPS(Transaction per Second):系统每秒处理交易数,单位是笔/秒。QPS(Query per Second):系统每秒处理查询次数,单位是次/秒。
在互联⽹业务中,如果某些业务有且仅有⼀个请求连接,那么TPS=QPS=HPS,⼀般情况下⽤TPS来衡量整个业务流程,⽤QPS来衡量接⼝查询次数,⽤HPS来表⽰对服务器点击请求。
参考标准:⽆论TPS、QPS、HPS,此指标是衡量系统处理能⼒⾮常重要的指标,越⼤越好⼀般情况下:
⾦融⾏业:1000TPS~50000TPS,不包括互联⽹化的活动保险⾏业:100TPS~100000TPS,不包括互联⽹化的活动制造⾏业:10TPS~5000TPS
互联⽹电⼦商务:10000TPS~1000000TPS互联⽹中型⽹站:1000TPS~50000TPS
互联⽹⼩型⽹站: 500TPS~10000TPS
5.点击率
每秒钟⽤户向WEB服务器提交的HTTP请求数.点击率越⼤,对服务器的压⼒越⼤.
6.cpu
CPU指标主要指的CPU利⽤率,包括⽤户态(user)、系统态(sys)、等待态(wait)、空闲态(idle)。
CPU利⽤率要低于业界警戒值范围之内,即⼩于或者等于75%CPU sys%⼩于或者等于30%CPU wait%⼩于或者等于5%
7.内存
内存是计算机中重要的部件之⼀,它是外存与CPU进⾏沟通的桥梁。计算机中所有程序的运⾏都是在内存中进⾏的,因此内存的性能对计算机的影响⾮常⼤。
内存(Memory)也被称为内存储器和主存储器,其作⽤是⽤于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。
现在的操作系统为了最⼤利⽤内存,在内存中存放了缓存,因此内存利⽤率100%并不代表内存有瓶颈
衡量系统内存是否有瓶颈主要靠SWAP(与虚拟内存交换)交换空间利⽤率,⼀般情况下,SWAP交换空间利⽤率要低于70%,太多的交换将会引起系统性能低下。
swap作⽤:内存不够⽤时,将存储器中的数据块从DRAM移到swap的磁盘空间中,以释放更多的空间给当前进程使⽤.当再次需要那些数据时,就可以将swap磁盘中的数据重新移到内存,⽽将那些不⽤的数据块从内存移到swap中
8.⽹络吞吐量
⽹络吞吐量简称为Network Throughput,是指在⽆⽹络故障的情况下单位时间内通过的⽹络的数据数量(单位为Byte/s)。
⽹络吞吐量指标⽤于衡量系统对于⽹络设备或链路传输能⼒的需求。当⽹络吞吐量指标接近⽹络设备或链路最⼤传输能⼒时,则需要考虑升级⽹络设备。
参考标准:⽹络吞吐量指标主要有每秒有多少兆流量进出,⼀般情况下不能超过设备或链路最⼤传输能⼒的70%。
9.磁盘I/O
磁盘的 I/O,顾名思义就是磁盘的输⼊输出。输⼊指的是对磁盘写⼊数据,输出指的是从磁盘读出数据 指标1:IOPS
IOPS (Input/Output Per Second)即每秒的输⼊输出量(或读写次数),是衡量磁盘性能的主要指标之⼀。IOPS是指单位时间内系统能处理的I/O请求数量,I/O请求通常为读或写数据操作请求指标2:数据吞吐量(Throughput)
指单位时间内可以成功传输的数据数量。对于⼤量顺序读写的应⽤,如VOD(Video On Demand),则更关注吞吐量指标。简⽽⾔之:
磁盘的 IOPS,也就是在⼀秒内,磁盘进⾏多少次 I/O 读写。
磁盘的吞吐量,也就是每秒磁盘 I/O 的流量,即磁盘写⼊加上读出的数据的⼤⼩。
参考资料:https://www.cnblogs.com/wx170119/p/11427837.html
10.错误率
错误率简称FR,指系统在负载情况下,失败交易的概率。错误率=(失败交易数/交易总数)*100%。参考标准:不同系统对错误率的要求不同,但⼀般不超出千分之六,即成功率不低于99.4%
11.中间件指标
常⽤的中间件例如Tomcat、Weblogic等,指标主要包括JVM、ThreadPool、JDBC。
参考标准:
当前正在运⾏的线程数不能超过设定的最⼤值。⼀般情况下系统性能较好的情况下,线程数最⼩值设置50和最⼤值设置200⽐较合适。
当前运⾏的JDBC连接数不能超过设定的最⼤值。⼀般情况下系统性能较好的情况下,JDBC最⼩值设置50和最⼤值设置200⽐较合适。
GC频率不能频繁,特别是FULL GC更不能频繁,⼀般情况下系统性能较好的情况下,JVM最⼩堆⼤⼩和最⼤堆⼤⼩分别设置1024M⽐较合适。
12.数据库指标
常⽤的数据库例如MySQL指标主要包括SQL、吞吐量、缓存命中率、连接数等。具体如下:参考标准:
SQL耗时越⼩越好,⼀般情况下毫⽶、微秒级别命中率越⾼越好,⼀般情况下不能低于95%锁等待次数越低越好,等待时间越短越好13.稳定性指标14.可扩展性指标
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------1. 通⽤指标(指Web应⽤服务器、服务器必需测试项)
2. Web服务器指标
3. 数据库服务器性能指标
4.系统的瓶颈定义
5.稳定系统的资源状态
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务