`
linkyou66
  • 浏览: 235042 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

性能测试与故障诊断

 
阅读更多
<p>1.认识软件<span class="t_tag">性能</span>测试 <br>一般说来,软件性能是衡量软件对于<span class="t_tag">用户</span>及时性要求的符合程度,它是软件产品的一种特征,可以用响应时间或效率来度量,如果从广义上来说,软件的性能还包括软件的可扩展性,可靠性等。 <br>大多数情况下,软件性能往往是通过软件和其它组件一起工作时表现出来,如所涉及的各种硬件设备,网络设备,各种应用中间件,数据库服务器等,特别是在一些大型分布式应用中更是如此,所以我们通常所说的软件性能测试就是考察软件在特定软硬件环境中的整体性能状况。 <br>通常对软件性能的关注有多个方面,不同的人员关注点不同,从用户角度说,软件性能是软件对用户操作的响应时间,更简单地说,用户更关注于在打开一个链接或按一个按钮时,页面返回所需要多长时间,如果太长,用户无法忍受,他对于此软件所得出的结论就是:性能太差!从系统管理员角度来说,他更关注的可能是整个系统所处的状态,如各个服务器 CPU 、内存、磁盘流量如何?应用服务器 JVM 目前占用为多少?另外管理员还会关注系统具有多大的可扩展性,也就是说系统可能的最大容量是什么,处理<span class="t_tag">并发</span>的能力等等。但对于开发商来讲,如何通过调整系统设置等提高软件的性能表现?如何发现并解决软件设计和开发过程中产生的由于多用户访问引发的软件故障,也就是说,最关注的是使性能表现不佳的因素和由于大量用户访问引发的软件故障。<br>2.性能测试与故障诊断的关系 <br>有人把测试比作给病人看病的过程,这个比喻很恰当。如果说性能测试是给人做普通健康体检的话,那么故障诊断就是进一步给人做病理分析、进而确诊的过程。我们知道,人在做体检的话,体检项目不外乎是身高、体重、眼耳口鼻、肝功、血液等一般常规检查,但却很少做 CT 、胃镜等非常规检验。在做软件性能测试时,我们往往关注的是系统所表现出来的整体状况,如系统响应时间、服务器资源占用、系统在可接受时间内所达到的最大并发数等。而故障诊断则是针对系统所表现出的整体性能不佳所进行的进一步的检查。当系统响应时间超长时,我们就查看是什么因素导致了问题的产生,是数据库服务器响应慢,还是应用服务器起主要原因,如果是数据库服务器响应慢,是因为 SQL 语句直接引起,还是数据库<span class="t_tag">参数</span>配置不当等原因,另外诸如内存泄露,短期对象,性能瓶颈,数据库配置, Web Server 配置, J2EE 资源配置等问题,这些深层次的东西才属于故障诊断所要解决的问题。在性能测试的基础上,我们为用户提供性能诊断<span class="t_tag">建议</span>报告。 <br>3.帮助用户解决的问题 <br>作为软件性能测试的工作者,必须立足于为所有与系统有关的群体服务,解决他们所关心的性能问题,我们通过性能测试和故障诊断,一方面能够告知终端用户在大量用户并发访问系统时响应时间表现如何,同时也可以告知系统管理者在大量用户并发访问系统时,服务器或是网络所处的状态如何,同时通过进一步地进行故障诊断,帮助开发人员找到问题原因,使他们尽快地进行修改。<br><br>性能调优<br>在经过性能测试、故障诊断过程之后,接下来要进行的工作就是系统性能调优。 <br>如果仍以给病人看病比喻软件测试过程,那么性能调优将类似于给病人开药方。开药方的目的是让病人尽快恢复健康,而性能调优的过程是使整个系统性能处于最佳状况。 <br>由于目前大多数应用系统都是基于分布式架构进行布署,系统性能会与所涉及的各个组件有关:操作系统、应用中间件,数据库服务器、硬件设备等,因此性能调优的过程也应围绕这几部分来进行。 <br>(1)操作系统的调优 <br>因为软件系统各组件运行于操作系统之上,因此首先确保操作系统在硬件环境上处于最优状态。操作系统内有一定的环境参数和设置可以用来调优 Java 性能,比如针对主流中件间有特定的设置参数,需要概据实际情况进行更改。 <br>(2)应用服务器调优: <br>目前比较流行的应用服务器有 WEBLOGIC 、 WEBSPHERE 等,应用服务器在 JVM 、线程池等方面的优化可以在一定程度上提高系统的最大并发用户数及系统运行效率。 <br>(3)数据库服务器调优 <br>目前主流的数据库产品主要有 ORACLE 、 SQL SERVER 、 DB2 、 SYBASE ,不同的应用系统所用的数据库不同,相应的调优策略也不尽同。 <br>(4)应用程序的调优 <br>应用程序的调优工作一般是由开发人员来解决,因为只有他们对于系统的内部运行最为熟悉,但是作为系统调优的一部分,性能测试工程师必须考虑到。 <br>(5)硬件问题 <br>在软件层面上的调优策略使用后仍达不到用户性能需求的情况下,可能就需要进行硬件的升级。 <br>还有些时候,硬件故障可以直接导致性能的下降,特别是在<span class="t_tag">压力测试</span>过程中,经常出现由于硬件原因导致无法访问服务器的现象,对于存在负载均衡的应用系统来说,故障虽不致于使系统处于瘫痪状态,但是却使得所有的压力集中于其它服务器上,直接导致系统运行效率低下。 <br>另外,由于系统生成的网络通信业务拥挤或者带宽不足,也无法满足处理正常通信的要求。网络配置和方法会对性能和网络的可用性产生重大影响。应当重视的是,大多数网络问题都有带宽和通信业务限制。换句话说,必须确定网络能够处理期望的网络通信业务。<br>有时,故障诊断工作结束后,相应的调优<span class="t_tag">方案</span>马上就可以得出,但是有些调优方案却得费些功夫。比如我们发现系统响应时间慢是因为数据库进行了全表扫描而造成,这种情况下,我们只需在一个相应的表上建一个索引即可;但是如果发现分配给数据库的内存大小不合适,我们并不能马上给出一个最佳分配方案,必须经过几次调试后,才能落实调优策略。</p>
分享到:
评论

相关推荐

    软件高级测评师讲义-05性能测试与故障诊断

    ### 软件高级测评师讲义:性能测试与故障诊断 #### 知识点一:系统性能检测与瓶颈分析 系统性能检测是一项至关重要的活动,它不仅关注于软件的执行效率,还深入到资源占用、稳定性、安全性、兼容性、可扩展性和...

    论文《汽车发动机性能检测与故障诊断专家系统的研究》

    论文《汽车发动机性能检测与故障诊断专家系统的研究》,和大家分享~

    基于Matlab与Delphi的风机性能测试与故障诊断系统.pdf

    根据给定的文件信息,本文将重点介绍基于Matlab与Delphi的风机性能测试与故障诊断系统的相关知识。 ### Matlab在风机性能测试中的应用 Matlab是一种高性能的数值计算环境和第四代编程语言,广泛用于工程计算、数据...

    变速箱性能测试与故障诊断

    对变速箱的性能进行测试和故障诊断哈哈哈哈哈哈哈哈哈哈哈

    汽车发动机性能检测与故障诊断专家系统的研究.CAJ

    汽车发动机性能检测与故障诊断专家系统的研究.CAJ 毕业设计论文

    沈立智第四期大型旋转机械的状态检测与故障诊断.

    《沈立智第四期大型旋转机械的状态检测与故障诊断》是关于机械设备健康管理的重要教程,尤其针对旋转机械设备的监测与故障诊断。这一领域的知识涵盖了多个关键点,包括但不限于以下几个方面: 一、旋转机械基础 ...

    汽车性能检测及故障诊断改进版.doc

    汽车性能检测与故障诊断是汽车行业的重要组成部分,涉及到车辆的安全性、经济性和环保性等多个方面。以下是基于提供的文件内容整理的相关知识点: 1. 国家标准与行业标准:国家标准通常设定最高的诊断参数限值,但...

    《网络测试和故障诊断 第二版》 网络课件介绍.pdf

    课程理念强调实践与理论相结合,通过三个阶段的学习,使学员逐步成长为具备网络测试和故障诊断能力的专业人士。第一阶段注重基础知识的积累,第二阶段侧重于技能的实践,第三阶段则关注在真实环境中应用所学知识,...

    网络故障诊断与测试项目实训任务文档.docx

    1. **网络管理与故障诊断**:网络管理的主要功能包括监控网络性能、配置网络设备、安全管理和故障排查等。故障诊断通常涉及分析网络流量、检查设备日志、运用网络诊断工具如ping、traceroute等。学生需要熟悉这些...

    汽车性能检测及故障诊断.doc

    汽车性能检测及故障诊断.doc

    系统性能测试与故障分析(基础流程).ppt

    系统性能测试与故障分析是确保软件产品质量的重要环节,主要关注系统的执行效率、资源占用、稳定性、安全性、兼容性、可扩展性和可靠性等多个方面。在实际操作中,性能测试旨在验证系统在不同条件下的表现,以满足...

    煤矿机电设备的故障检测与诊断

    在煤矿行业,机电设备的稳定运行至关重要,故障检测与诊断技术的应用是确保煤矿机电设备安全可靠性的重要手段。故障检测与诊断技术可以帮助矿山操作员及时发现设备潜在的故障,从而避免生产中断和安全事故。本文将...

    大型旋转机械的状态检测与故障诊断.pdf

    大型旋转机械的状态检测与故障诊断是设备管理及维护领域的一项重要技术,它涉及到设备运行状态的实时监测和分析,以及在发现异常情况下对故障进行准确诊断的能力。这种技术对于提高设备运行效率、预防事故发生、减少...

    电力设备的在线监测与故障诊断.pdf

    ——设备绝缘结构性能的好坏,成为决定整台设备寿命的关键。 由于大型电气设备发生故障而造成突发性停电事故,会造成巨大的经济损失和不良的社会影响。 提高设备可靠性的方法:(1)提高设备的质量;(2)对设备进行...

    故障诊断相关的MATLAB代码.rar_fault code_matlab_故障_故障诊断_神经网络故障

    在故障诊断中,神经网络可以学习正常和异常状态的数据模式,然后对新的数据进行分类或回归分析,判断设备是否发生故障。 2. **MATLAB中的神经网络工具箱**:MATLAB提供了神经网络工具箱,包括函数如`feedforwardnet...

    制动器试验台性能监测与故障诊断专家系统的研制.zip

    制动器试验台是用于测试和评估制动器性能的重要设备,其性能监测与故障诊断对于确保车辆制动系统的安全性和可靠性至关重要。制动器试验台通常包括硬件系统和软件系统两部分,硬件部分负责模拟实际工况对制动器施加...

    论文研究-基于模糊神经网络的平显设备故障诊断研究.pdf

    简化了故障诊断系统的结构,实现了自动性能检测和故障诊断,能够有效地辨识故障源,隔离了从LRU 级到SRU级的故障,并给出了典型测试项的故障诊断实例。作为一种先进有效的故障诊断技术已经应用于某型飞机HUD和相关...

    电机绝缘结构与故障诊断

    电机绝缘结构与故障诊断 电机绝缘结构是电气设备的重要组成部分,对电气设备的安全性、可靠性和使用寿命产生重要影响。电机绝缘结构的主要作用是隔离带电体与地,以及异体之间的不同电位。电气设备通电后,绝缘结构...

Global site tag (gtag.js) - Google Analytics