性能常见术语

以下内容转载自《企业应用架构》

响应时间是系统完成一次外部请求处理所需的时间。这些外部请求可能是用户交互行为,例如按下一个按钮.或是服务器 API 的调用。

响应性不同于请求处理,它是系统响应请求的速度有多快。这个指标在许多系统里非常重要,因为对于一些系统而言,如果其响应性太慢,用户将难以忍受 --- 尽管其响应时间可能不慢。如果在请求处理期间,系统一直处于等待状态,则系统的响应性和响应时间是相同的。然而,如果能够在处理真正完成之前就给用户一些信息表明系统已经接到请求,则响应性就会好一些。例如,在文件拷贝过程中,为用户提供一个“进展条”,将会提高用户界面的响应性,但并不会提高响应时间。

等待时间是获得系统任何形式响应的最小时间.即使应该做的工作并不存在。通常它是远程系统中的大问题。假设我们让程序什么都不做,只是调用返回即可,则如果在本机上运行程序,一般都会立即得到响应。但是,如果在远程计算机上运行程序,情况就不一样,往往需要数秒的时间才能得到响应,因为从发出请求到得到响应的数秒时间主要用于排除困难使信.息在线路上的传输。作为应用开发者,我经常对等待时间无能为力。这也是为什么要尽盈避免远程调用的原因。


吞吐率是给定时间内能够处理多大的请求量。如果考察的是文件拷贝,则吞吐率可以用每秒字节量来表示。对于企业应用来说,吞吐率通常用每秒事务数( tps )来度量。这种方法的一个问题是指标依赖于事务的复杂程度。对于特定系统的测试,应该选取普通的事务集合。


在这里,性能或者指吞吐率,或者指响应时间,由用户自己决定。当通过某种优化技术后,使得系统的吞吐率提高了,但是响应时间下降了,这时就不好说系统的性能提高了,最好用更准确的术语表示。从用户角度而言,响应性往往比响应时间更重要,因此,为了提高响应性而损失一些响应时间或者吞吐率是值得的。

负载是关于系统当前负荷的表述,也许可以用当前有多少用户与系统相连來表示。负载有 时也作为其他指标(如响应时间)的背景。因此,我们可以说:在10个用户的情况,请求响 应时间是0.5秒,在20个用户的情况下,请求响应时间是2秒。

负载敏感度是指响应时间随负载变化的程度。假设:系统A在10〜20个用户的情况下,请求 响应时间都是0.5秒,系统B在10个用户的情况下,请求响应时间是0.2秒,在20个用户的情况下, 请求响应时间上升到2秒。此时,系统A的负我敏感度比系统B低,我们还可以使用术语袞减 (degradation),称系统B衰减得比系统A快。

效率是性能除以资源。如果一个双CPU系统的性能是30tps,另一个系统有4个同样的CPU, 性能是40tps,则前者效率高于后者。

系统的容量是指最大有效负载和吞吐率的指标。它可以是一个绝对最大值或性能衰减至低 于一个可接受的阈值之前的临界点。

可伸缩性度量的是向系统中增加资源(通常是硬件)对系统件能的影响。一个可伸缩的系 统允许在增加了硬件后,能够有性能上的合理提高。例如,为了使吞吐率提离一倍,要增加多少服务器等,垂直可伸缩性或称垂直延展,通常指提高单个服务器的性能,例如增加内存。水平可伸缩性或称水平延展,通常指增加服务器数目。

猜你喜欢

转载自blog.csdn.net/xc917563264/article/details/80729837