性能测试中,很容易混淆的这些名词,一定要知道
1、负载测试和压力测试
压力测试 通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大的服务级别的测试。
通俗地说,就是测试出系统的最大性能,如支持最大的并发数。
负载测试 是确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统组成部分的相应输入项,例如通过量、响应时间、CPU负载、内存使用等如何决定系统的性能,例如稳定性和响应等。
通俗的说,就是系统在特定负载下(如并发数为200),系统各项资源的使用情况,及被测应用的稳定性和响应时间变化,并分析其中是否存在性能瓶颈。
负载测试通常描述一种特定类型的压力测试。
2、疲劳强度测试和稳定性测试
稳定性测试 被测应用持续正确运行的周期长度。
通俗的说,就是指被测应用被用户正常的使用,能持续多长时间运行而不出现错误。
疲劳强度测试 通常是采用被测应用稳定运行情况下能够支持的最大并发用户数,持续执行一段时间(至少24小时)业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。从侧面反映了被测应用的稳定性(反映稳定性是基于假设:在高强度运行下被测应用都能较长时间的正确处理业务,那么在正常使用情况下系统也应该能长时间的正确处理业务)。
通俗的说,就是用被测应用支持的最大并发数长时间模拟运行业务,通过资源和性能指标侧面分析系统的稳定性。因为稳定性测试需要花费的大量时间(如上月、上年),所以大部分情况下,用疲劳强度测试来替代稳定性测试。
3、内存溢出和内存泄露
内存溢出 程序要求的内存,超出了系统所能分配的范围。
通俗的说,就是内存不够。通常系统会报out ofmemory类似错误。
内存泄露 指程序在申请内存后,无法释放已申请的内存空间,如果内存不能释放,这块内存就不能再次使用,我们就说这块内存泄漏了。
通俗的说,就是程序使用内存后没有及时释放,造成内存浪费,最终导致程序运行慢及系统崩溃。
4、(相对)并发和(绝对)并发
(相对)并发 针对功能(业务、或服务器交互等),指在同一时刻对该功能的操作次数。
(绝对)并发 针对功能,指在一段时间内对该功能的操作次数。
5、(相对)并发用户数和(绝对)并发用户数
(绝对)并发用户数 在同一时刻与服务器进行了交互的在线用户数量。
(相对)并发用户数 一段时间内(通常为1s),与服务器进行了交互的在线用户数量。
6、在线用户数和同时在线用户数
对于一个网站来讲,当一个用户进入到该网站后,开始在该网站上进行各种操作,包括浏览网页、检索内容、提交表单等,这个过程中的用户称为在线用户。在一段时间内网站上的在线用户数量,则成为在线用户数;而在同一时刻网站上的在线用户数量,则称为同时在线用户数。
7、进程和线程
进程 一个具有独立功能的程序关于某个数据集合的一次运行活动。
线程 一条线程指的是进程中一个单一顺序的控制流。
在操作系统中引入线程是为了减少程序并发执行时所付出的时空开销,使得开发力度更细,并发性更好。一个进程可以有很多线程,每条线程并行执行不同的任务。进程是资源分配的单位,而线程是处理器调度的单位。
8、HPS和TPS
HPS 每秒点击(或与服务器交互)次数,是指在一秒钟的时间内用户对Web页面的链接、提交按钮等点击总和(或服务器交互次数总和)。
TPS 每秒钟系统能够处理的交易或事务的数量。它是衡量系统处理能力的重要指标。一个事务操作,可以包含多个点击(或多次服务器交互)。
通常HPS与TPS成正比关系。
9、上行带宽和下行带宽
上行带宽 指上传资源所能用的带宽大小。
下行带宽 指下载资源所能用的带宽大小。