评价计算机系统处理能力的指标?
衡量一个软件系统性能的常见指标有:
1.响应时间(Response time)
响应时间就是用户感受软件系统为其服务所耗费的时间,对于网站系统来说,响应时间就是从点击了一个页面计时开始,到这个页面完全在浏览器里展现计时结束的这一段时间间隔,看起来很简单,但其实在这段响应时间内,软件系统在幕后经过了一系列的处理工作,贯穿了整个系统节点。根据“管辖区域”不同,响应时间可以细分为:
(1)服务器端响应时间,这个时间指的是服务器完成交易请求执行的时间,不包括客户端到服务器端的反应(请求和耗费在网络上的通信时间),这个服务器端响应时间可以度量服务器的处理能力。
(2)网络响应时间,这是网络硬件传输交易请求和交易结果所耗费的时间。
(3)客户端响应时间,这是客户端在构建请求和展现交易结果时所耗费的时间,对于普通的瘦客户端Web应用来说,这个时间很短,通常可以忽略不计;但是对于胖客户端Web应用来说,比如java applet、AJAX,由于客户端内嵌了大量的逻辑处理,耗费的时间有可能很长,从而成为系统的瓶颈,这是要注意的一个地方。
那么客户感受的响应时间其实是等于客户端响应时间+服务器端响应时间+网络响应时间。细分的目的是为了方便定位性能瓶颈出现在哪个节点上(何为性能瓶颈,下一节中介绍)。
2.吞吐量(Throughput)
平均利用率=平均到达事务数/平均处理事务数
平均响应时间=平均处理时间/(1-平均利用率)
吞吐量是我们常见的一个软件性能指标,对于软件系统来说,“吞”进去的是请求,“吐”出来的是结果,而吞吐量反映的就是软件系统的“饭量”,也就是系统的处理能力,具体说来,就是指软件系统在每单位时间内能处理多少个事务/请求/单位数据等。但它的定义比较灵活,在不同的场景下有不同的诠释,比如数据库的吞吐量指的是单位时间内,不同SQL语句的执行数量;而网络的吞吐量指的是单位时间内在网络上传输的数据流量。吞吐量的大小由负载(如用户的数量)或行为方式来决定。举个例子,下载文件比浏览网页需要更高的网络吞吐量。
3.资源使用率(Resource utilization)
常见的资源有:CPU占用率、内存使用率、磁盘I/O、网络I/O。
资源使用率(Resource utilization) 常见的资源有:CPU占用率、内存使用率、磁盘I/O、网络I/O。
4.点击数HPS(Hits per second)
点击数是衡量Web Server处理能力的一个很有用的指标。需要明确的是:点击数不是我们通常理解的用户鼠标点击次数,而是按照客户端向Web Server发起了多少次http请求计算的,一次鼠标可能触发多个http请求,这需要结合具体的Web系统实现来计算。
5. TPS - TPS:Transaction per second,每秒钟系统能够处理的交易或者事务的数量。它是衡量系统处理能力的重要指标。
6.并发用户数(Concurrent users)
并发用户数用来度量服务器并发容量和同步协调能力。在客户端指一批用户同时执行一个操作。并发数反映了软件系统的并发处理能力,和吞吐量不同的是,它大多是占用套接字、句柄等操作系统资源。
当系统性能降至量基本的水平时,性能调整由查找和消除瓶颈组成。
7.性能调整主要表现在四方面:识别约束、指定负载、设置性能目标和测试。通过反复迭代。
8.系统性能评估
1、时钟频率法:
2、指令执行速度法
3、等效指令速度法
4、数据处理速率法
5、综合理论性能法
6、基准程序法
9.负载均衡
负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。
目前比较常用的负载均衡技术有以下几种:
1、基于DNS的负载均衡:在DNS中为多个地址配置同一个名字,因而查询这个名字的客户端将得到其中一个地址
2、代理服务器负载均衡:使用代理服务器将请求均匀转发给多台服务器
3、地址转换网关负载均衡:将一个外部IP地址映射为多个内部IP地址,对每次TCP连接请求动态使用其中一个内部地址
4、协议内部支持负载均衡
5、NAT人,负载均衡:NAT是将一个IP地址转换为另一个IP地址。
6、反向代理负载均衡
7、混合型负载均衡
10.阿姆达尔解决方案
阿姆达尔定律:系统中对某部件采用某种更快执行方式,所获得的系统性能的改变程度,取决于这种方式被使用的频率,或所占总执行时间的比例。
加速比=不使用增强部件时完成整个任务的时间/使用增强部件时完成整个任务的时间
新执行时间=原来的执行时间*[(1-增强比例)+增强比例/增强加速比]
总加速比=原来的执行时间/新的执行时间=1/[(1-增强比例)+增强比例/增强加速比]
总结:度量软件系统的性能指标还有系统恢复时间等,其实凡是用户有关资源和时间的要求都可以被视作性能指标,都可以作为软件系统的度量,而性能测试就是为了验证这些性能指标是否被满足。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有